Laden...

Welche Datenbank für Desktop & PHP

Erstellt von deluxe13 vor 4 Jahren Letzter Beitrag vor 4 Jahren 1.395 Views
D
deluxe13 Themenstarter:in
32 Beiträge seit 2018
vor 4 Jahren
Welche Datenbank für Desktop & PHP

verwendetes Datenbanksystem: <bitte immer angeben>

Hallo ihr lieben,

ich hab da einige fragen an euch, und zwar möchte ich ein Kleines Programm erstellen was auf nem Windows Desktop laufen wird über C#. Dazu Soll aber auch Mobil über PHP auf die selbe Datenbank zugegriffen werden.

Mit Mysql habe ich bereits gearbeitet, aber leider war die Verbindung auf einen Externen Server über C# nicht die beste und eher störend.

Welche Datenbank würde Sinn machen, wenn man eine Datenbank extern aufbauen will, dann mit C# und PHP dadrauf zugreifen möchte..

Dann noch eine andere Frage, was macht mer Sinn wenn man eine größere Tabelle auf der Datenbank hat und diese Filtern möchte-. Die Tabelle komplett auf einen Datagrid laden und dort filtern, oder direkt bei der Abfrage filtern?

Lieben Dank,
bin derzeit alles neu am lernen, deswegen sorry für die dummen fragen 😃

463 Beiträge seit 2009
vor 4 Jahren

Welche Datenbank würde Sinn machen, wenn man eine Datenbank extern aufbauen will, dann mit C# und PHP dadrauf zugreifen möchte..

Ist ein wenig von der persönlichen EInstellung abhängig - du kannst hier sowohl auf eine SQL (z.B. Microsoft SQL Express) oder mySQL (z.B. Maria DB) gehen. Auch eine Mongo DB ist möglich... Ich vermeide allerdings immer den direkten Zugriff auf eine DB über das Internet (aus Sicherheitsgründen).

Dann noch eine andere Frage, was macht mer Sinn wenn man eine größere Tabelle auf der Datenbank hat und diese Filtern möchte-. Die Tabelle komplett auf einen Datagrid laden und dort filtern, oder direkt bei der Abfrage filtern?

Definiere größere Datenbank - wir haben hier Datenbanken mit mehreren TB und ich empfinde diese immer noch nicht als groß... Aus der Erfahrung möchte ich dir aber folgendes mitgeben: Immer die Daten dort filtern wo es am billigsten ist - dies ist (meistens) immer die Datenbank. Warum willst du u.U. mehrere GB an Daten übertragen, wenn du nur 100KB an Daten davon benötigst?

D
deluxe13 Themenstarter:in
32 Beiträge seit 2018
vor 4 Jahren

Danke für deine Antwort

Aus der Erfahrung möchte ich dir aber folgendes mitgeben: Immer die Daten dort filtern wo es am billigsten ist - dies ist (meistens) immer die Datenbank. Warum willst du u.U. mehrere GB an Daten übertragen, wenn du nur 100KB an Daten davon benötigst?

Mehrere GB wird es mit sehr großer sicherheit in den nächsten jahren nicht werden 😃.

Hierbei ist für mich die Frage, braucht das SQL länger für das Filtern oder geht es mit C# schneller.

--

Mit Mysql hatte ich leider das Problem, das mein Programm immer eine störende weile gebraucht hat um die daten zu holen. Aber ich werde mich nochmal damit beschäftigen, vielleicht habe ich iwo einen fehler gemacht.

3.511 Beiträge seit 2005
vor 4 Jahren

Moin,

welche Datenbank man nehmen sollte, hängt sehr stark vom Anwendungsfalls ab. Vielleicht reicht schon eine Sqlite DB, oder du brauchst ein SQL Server Enterprise. Sprich, die Range geht von minimal bis ins extreme. Vielleicht ist auch eine NoSQL DB sinnvoller? Auch deine Anforderungen sind nicht bekannt. Auf was für einem OS soll die DB laufen? Von wie viel Daten sprechen wir? Wie viele Zugriffe pro Sekunde? Usw usw...

Die Tabelle komplett auf einen Datagrid laden und dort filtern, oder direkt bei der Abfrage filtern?

Auch wenn du noch am Anfang stehst, solltest du dir die Frage selber beantworten können 😃

Und nebenbei: Wenn du eine Anwendung bauen willst, die es als Desktop und Webanwendung gibt, wirst du an einer Web API (z.B. ASP .NET Core) nicht vorbeikommen. In dieses Thema solltest du dich unbedingt einlesen. Anhand deiner Fragen erkennt man schon, dass du noch recht am Anfang stehst (was ja absolut nicht schlimm ist). Hier würde ich dir empfehlen, dass du dich erst weiter in die Grundlagen vertiefst, da gleich solch ein Anwendungsfall sich nicht unbedingt als Startprojekt eignet. Außer es ist eine reine "Spielwiese" für sich.

Ok, in der Zwischenzeit hat Stefan.Haegele geantwortet. Aufgrund deiner Antwort stellt sich immer noch die Frage, ob es eher relationale Daten sind (SQL) oder eher strukturierte (NoSQL)?

"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)

D
deluxe13 Themenstarter:in
32 Beiträge seit 2018
vor 4 Jahren

Dann mal kurz dazu was ich aufbauen Möchte.

Ein Sistem für ein RentaCar.

Auf der Desktopversion wird mal halt Kundenpflege, reservationspflege und Autopflege für ca. 80 Autos haben. - Die Anwendung ist für mich - wird halt wirklich etwas wie eine Spielwiese sein, da vlt später im betrieb der Eltern integrieren 😃

Die PHP version soll nur dazu dienen die Reservationen für den Tag anzuzeigen, und falls nötig auch bearbeiten. Ob hierfür wirklich ASP.Net Core im Spiel sein muss, ich würde es erstmal lieber weglassen, und mit PHP und SQL arbeiten.

Das was mir halt sorgen macht, das ich vorher mal ein kleines programm geschrieben habe, wo die Datenbank (MySQL) auf einem Externen server lief, sehr lange gebracht hat um die Daten anzuzeigen.

Also für mich ist nur Wichtig dass das Programm obwohl die DatenBank extern ist, sehr flüssig auf dem PC läuft, und hier halt die Frage welche DB ist dafür am besten, weil ich leider auch extern auf die Datenbank zugreifen muss-

463 Beiträge seit 2009
vor 4 Jahren

Hierbei ist für mich die Frage, braucht das SQL länger für das Filtern oder geht es mit C# schneller.

Ich will und möchte dir die Recherche über google an dieser Stelle nicht abnehmen, möchte jedoch dazu anmerken, dass auch die übertragung der Daten Zeit und u.U. sogar Geld kostet.

463 Beiträge seit 2009
vor 4 Jahren

Ein Sistem für ein RentaCar.

Auf der Desktopversion wird mal halt Kundenpflege, reservationspflege und Autopflege für ca. 80 Autos haben. - Die Anwendung ist für mich - wird halt wirklich etwas wie eine Spielwiese sein, da vlt später im betrieb der Eltern integrieren 😃

Du solltest dir zuerst die Grundlagen aneingnen - ansonsten ist dieses Projekt zum Scheitern verurteilt. Ich möchte dir nicht den Mut nehmen, aber mit deinem aktuellen Wissen denke ich nicht, dass du dieses Projekt stemmen wirst.

Die PHP version soll nur dazu dienen die Reservationen für den Tag anzuzeigen, und falls nötig auch bearbeiten. Ob hierfür wirklich ASP.Net Core im Spiel sein muss, ich würde es erstmal lieber weglassen, und mit PHP und SQL arbeiten.

SQL ist nicht gleich SQL... Nur mal so am Rande - und wenn du vorhast das ganze in C# zu entwickeln, warum dann nicht auch die Webkomponenten in .net?

Das was mir halt sorgen macht, das ich vorher mal ein kleines programm geschrieben habe, wo die Datenbank (MySQL) auf einem Externen server lief, sehr lange gebracht hat um die Daten anzuzeigen.

Also für mich ist nur Wichtig dass das Programm obwohl die DatenBank extern ist, sehr flüssig auf dem PC läuft, und hier halt die Frage welche DB ist dafür am besten, weil ich leider auch extern auf die Datenbank zugreifen muss-

Da spielen ganz viele Faktoren eine Rolle - wo war die Datenbank gehostet? Bei einem Hostingpaket für 1EUR im Monat oder auf einem vernünftigen Webserver? Zum anderen nochmals - der direkte Zugriff auf eine Datenbank über das Internet ist ein NoGo! Hier bieten sich z.B. Webservice an...

16.807 Beiträge seit 2008
vor 4 Jahren

Neben dem gesagtem - und enorm wichtigen - dass eine Desktop- und Mobilanwendung ohnehin nicht direkt auf die Datenbank, sondern über einen Service zugreifen sollte:

Datenbanken sucht man nach den Daten aus, die gespeichert werden sollen - nicht nach der Plattform des Clients.