Datenbank für eine Quiz App?

SQL, Dateimanagement - Sprachunabhängige Datenhaltung
Antworten
Lukas Hausmann
Beiträge: 2
Registriert: Mo Nov 16, 2020 2:38 pm

Datenbank für eine Quiz App?

Beitrag von Lukas Hausmann » Mo Nov 16, 2020 2:40 pm

Hey meine lieben Programmier-Freunde,

ich hätte eine kleine Frage bezüglich Datenbanken.

Ich bin derzeit dabei, mit ein paar Freunden eine Quiz-App zu programmieren. Als Programmiersprache benutzen wir "Flutter". Hier haben sich bisher zum Glück keine Probleme ergeben.
Allerdings überlegen wie derzeit, wie man die ganzen Quiz-Fragen verwaltet...?
Ich kenne mich mit dem Thema Datenbanken noch nicht so gut aus, aber gerade ist meine Idee, eine MySQL Datenbank zu erstellen. Dann quasi Fragen in diese Datenbank einpflegen und immer jeder Frage eine Antwort zuzuordnen. Dann fügt man diese Datenbank irgendwie in die App ein und wenn dann jemand die Quiz-App spielt, werden zufällig Fragen aus dem Datenbank-Pool gestellt.

Ist das so theoretisch umsetzbar? Kann hier jemand grob anschneiden, auf was ich achten muss?

Ich Danke euch im Voraus und wünsche euch noch einen erfolgreichen Tag, bleibt alle gesund!

Viele Grüße

Lukas

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Datenbank für eine Quiz App?

Beitrag von Xin » Mo Nov 16, 2020 4:22 pm

Lukas Hausmann hat geschrieben:
Mo Nov 16, 2020 2:40 pm
Allerdings überlegen wie derzeit, wie man die ganzen Quiz-Fragen verwaltet...?
Ich kenne mich mit dem Thema Datenbanken noch nicht so gut aus, aber gerade ist meine Idee, eine MySQL Datenbank zu erstellen. Dann quasi Fragen in diese Datenbank einpflegen und immer jeder Frage eine Antwort zuzuordnen. Dann fügt man diese Datenbank irgendwie in die App ein und wenn dann jemand die Quiz-App spielt, werden zufällig Fragen aus dem Datenbank-Pool gestellt.

Ist das so theoretisch umsetzbar? Kann hier jemand grob anschneiden, auf was ich achten muss?
Ich sehe hier nicht die Notwendigkeit für eine Datenbank oder sollen die Fragen über das Netz abrufbar sein?
Solange die Fragen nur in der App liegen müssen, halte ich SQL für übertrieben.

Im Falle von MySQL müsstest Du die MySQLClient-Lib dazulinken und nutzen. Du schickst also Deine SQL-Befehle an die Lib und die verbindet sich mit Deiner Datenbank im Netz. Und ob Du solche Libs auf eine App bekommst und das noch über Flutter ansprechen kannst... da bin ich überfragt.

Aber hier hilft Google ja auch schon etwas. Es muss also prinzipiell möglich sein: mysql1 für Dart/Flutter

Auf was Du achten musst...?
Da bin ich bzgl. Flutter überfragt. An der eigentlichen Datenbank wirst Du - sofern nur Quizfragen gefragt sind - kaum etwas falsch machen können.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Lukas Hausmann
Beiträge: 2
Registriert: Mo Nov 16, 2020 2:38 pm

Re: Datenbank für eine Quiz App?

Beitrag von Lukas Hausmann » Mo Nov 16, 2020 4:42 pm

Heyyy,

erstmal Danke für deine Antwort!

Also es soll etwas "komplizierter" sein, sprich es ist geplant zu tracken, welche Fragen der Nutzer schon hatte, damit sich diese nicht wiederholen, es sollen ca. 5000 - 10.000 Fragen sein, es sollen Schätzfragen integriert sein, bei dem die App ausrechnet, wessen eingegebene Zahl weiter vom Ergebnis entfernt ist etc.
Ich denke hierfür braucht man schon eine richtige Datenbank, oder was denkst du?
Stand jetzt (neu), wollen wir sogar einen Server zwischen schalten...

nufan
Wiki-Moderator
Beiträge: 2557
Registriert: Sa Jul 05, 2008 3:21 pm

Re: Datenbank für eine Quiz App?

Beitrag von nufan » Mo Nov 16, 2020 5:30 pm

Lukas Hausmann hat geschrieben:
Mo Nov 16, 2020 4:42 pm
Stand jetzt (neu), wollen wir sogar einen Server zwischen schalten...
Das halte ich - sofern ihr eine Datenbank verwenden wollt - für eine gute Idee. Ich würde stark davon abraten eine Datenbank direkt (ohne Web-Server dazwischen) im Internet verfügbar zu machen.

Meine Empfehlung wäre die Datenbank über eine REST-Schnittstelle abzukapseln, die dann von der App verwendet wird.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Datenbank für eine Quiz App?

Beitrag von Xin » Di Nov 17, 2020 10:27 am

Lukas Hausmann hat geschrieben:
Mo Nov 16, 2020 4:42 pm
Also es soll etwas "komplizierter" sein, sprich es ist geplant zu tracken, welche Fragen der Nutzer schon hatte, damit sich diese nicht wiederholen, es sollen ca. 5000 - 10.000 Fragen sein, es sollen Schätzfragen integriert sein, bei dem die App ausrechnet, wessen eingegebene Zahl weiter vom Ergebnis entfernt ist etc.
Ich denke hierfür braucht man schon eine richtige Datenbank, oder was denkst du?
Das klingt schon eher nach der Aufgabe einer Datenbank.
Lukas Hausmann hat geschrieben:
Mo Nov 16, 2020 4:42 pm
Stand jetzt (neu), wollen wir sogar einen Server zwischen schalten...
Zur ursprünglichen Frage: Auf was musst Du achten?
Siehe Nufan. :-)

Der Vermittler sorgt dafür, dass Du kritischen Code lokal behältst, also notfalls auch noch korrigieren kannst, wenn die App ausgeliefert wurde. Die Firma
; DROP TABLE „COMPANIES“;– LTD
existiert(e?) beispeilsweise vermutlich weniger, um sich einen einprägsamen Namen zu machen, wurde aber trotzdem weltbekannt. Das ist tatsächlich der Name der Firma.

Ansonsten stellt sich die Frage nach dem Aufbau der Datenbank und wieviele Daten Du eigentlich halten möchtest. Wenn Du 5000-10000 Fragen für realistisch hältst, wirst Du auch entsprechend viele Clients haben, die Daten produzieren. Das ist erstmal soweit alles überschaubar.
Datenbanken gehen allerdings mit der Zeit gerne auseinander, das heißt, sie werden langsamer. Je nachdem wieviel Traffic also je Interaktion anfällt, je schneller so eine Datenbank wächst, desto schneller geht der Server auch in die Knie. Wenn zur Testphase also ein Raspberry Pi ausreicht, aber einfach alles über viele Tabellen geloggt wird, vielleicht auch bereits Auswertung von Daten läuft und wieder in die Datenbank geschrieben wird (neue Daten also noch mehr neue Daten erzeugen), dann kann einem sowas um die Ohren fliegen.

Grundsätzlich klingt Quiz-App aber nicht danach, als ob man da sonderlich viel beachten muss, sondern eher nach "Schönes Einsteigerprojekt, um sich mit einer Datenbank vertraut zu machen".
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mfro
Beiträge: 346
Registriert: Mi Jan 16, 2013 4:58 pm

Re: Datenbank für eine Quiz App?

Beitrag von mfro » Fr Nov 20, 2020 9:24 pm

Flutter und sqlite arbeiten gut zusammen: https://flutter.dev/docs/cookbook/persistence/sqlite
It's as simple as that. And remember, Beethoven wrote his first symphony in C.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Datenbank für eine Quiz App?

Beitrag von Xin » Sa Nov 21, 2020 12:39 pm

mfro hat geschrieben:
Fr Nov 20, 2020 9:24 pm
Flutter und sqlite arbeiten gut zusammen: https://flutter.dev/docs/cookbook/persistence/sqlite
SQLite ist doch nur für den lokalen Einsatz gedacht.
Und schlussendlich braucht er - wenn er Nufans Ansatz folgt - weniger eine SQL-Datenbank in der App, als auf dem Server. In der App braucht er dann eine Anbindung an den Web-Server.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mfro
Beiträge: 346
Registriert: Mi Jan 16, 2013 4:58 pm

Re: Datenbank für eine Quiz App?

Beitrag von mfro » Mo Nov 23, 2020 5:36 pm

Xin hat geschrieben:
Sa Nov 21, 2020 12:39 pm
mfro hat geschrieben:
Fr Nov 20, 2020 9:24 pm
Flutter und sqlite arbeiten gut zusammen: https://flutter.dev/docs/cookbook/persistence/sqlite
SQLite ist doch nur für den lokalen Einsatz gedacht.
Na und? Die zentrale Quiz-Datenbank habe ich zumindest in den Anforderungen nicht gesehen. Die habt ihr dazuerfunden.
It's as simple as that. And remember, Beethoven wrote his first symphony in C.

nufan
Wiki-Moderator
Beiträge: 2557
Registriert: Sa Jul 05, 2008 3:21 pm

Re: Datenbank für eine Quiz App?

Beitrag von nufan » Di Nov 24, 2020 8:51 am

mfro hat geschrieben:
Mo Nov 23, 2020 5:36 pm
Die zentrale Quiz-Datenbank habe ich zumindest in den Anforderungen nicht gesehen.
Wie würdest du die erwähnte Auswertung der Schätzfrage ohne zentrale Datenbank umsetzen?

Antworten