sqlite Datenbank als Datenquelle hinzufügen

  • C#

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    sqlite Datenbank als Datenquelle hinzufügen

    Hallo,

    ich versuche meine sqlite datenbank zu meinem projekt hinzufügen, leider ohne erfolg... ich habe nicht die möglichkeit sqlite als datenbanktyp auszuwählen.

    hab schon folgendes versucht:
    - installiert: system.data.sqlite.org/blobs/1…dle-x86-2013-1.0.98.0.exe
    - installiert: system.data.sqlite.org/blobs/1…dle-x64-2010-1.0.99.0.exe

    - sqlite-net via nuget

    leider hat nichts geklappt...
    weiß jemand rat?
    @ErfinderDesRades
    okay, hab nun eine Acces-DB in meinem Projekt, fühl ich mich viel wohler damit!
    ich habe eine tabelle erstellt und die db dann eingebunden, anschlißend habe ich automatisch generiertem "dbDataSet" eine Tabelle hinzugefügt, und sicherheitshalber die db aus meinem ordner gelöscht.
    nach dem debuggen wurde die datenbank-datei erstellt, aber ich musste feststellen, dass die eben im dataset erstellte tabelle dort nicht drin ist. kann die irgendwie "synchronisiert" werden? bzw. möchte ich, wenn ich eine tabelle erstelle die auch in meiner datei haben.
    Also das ist mir vollkommen verwirrlich, was du berichtest:

    windowsfan schrieb:

    ich habe eine tabelle erstellt und die db dann eingebunden, anschlißend habe ich automatisch generiertem "dbDataSet" eine Tabelle hinzugefügt, und sicherheitshalber die db aus meinem ordner gelöscht.
    Wat?
    Wenn die Db weg ist, sollte man eiglich nicht mehr debuggen können.
    Wie befüllst du denn das Dataset, wenn die Db weg ist?

    windowsfan schrieb:

    nach dem debuggen wurde die datenbank-datei erstellt
    Nanu?
    Nun ist sie auf einmal wieder da, die Db? Wo kommt die her, ich denke, du hast sie gelöscht?

    windowsfan schrieb:

    ich musste feststellen, dass die eben im dataset erstellte tabelle dort nicht drin ist.
    Wie sollte die im Dataset erstellte Tabelle auch in die Db gelangen?



    Also der normale Vorgang sieht so aus, dass man eine Db erstellt, und sich per Assistent daraus ein Dataset generieren lässt. Dabei konfiguriert der Assistent das typDataset so, dass alle seine Tabellen und DataRelations genau auf entsprechende Tabellen und Beziehungen in der Datenbank mappen.

    Es ist ein Mapping-Vorgang, also 2 gänzlich verschiedene Strukturen entsprechen einander (und das bis ziemlich ins Detail: jeder Datentyp jeder Spalte jeder Tabelle hat seine Entsprechung auf der Gegenseite).
    Also niemals ist eine Datenbank-Tabelle in einem Dataset, oder eine DataTable in einer Datenbank - das ist vollkommener Unsinn, so zu denken.
    Es gibt nur Entsprechungen - wenn alles mit rechten Dingen zugeht.
    Und die DataAdapter kennen die Mappings, und deswegen können sie Daten von der einen in die andere Struktur übertragen, also konvertieren natürlich, und übertragen.

    Und wie gesagt, standardmäßig gibt es Assistenten, die aus einer Datenbank ein korrekt mappendes Dataset generieren können.
    Die können aber nur aus der Db ein Dataset generieren, nicht umgekehrt.
    Und ausserdem muss man den Assistenten dafür ausdrücklich aufrufen.

    (Unstandardmäßig hab ich ein Tool gecodet, was umgekehrt funktioniert: Anhand eines typisierten Dataset kann es in einer Datenbank die entsprechenden (mappenden) Tabellen anlegen.)

    ErfinderDesRades schrieb:

    Nanu?
    Nun ist sie auf einmal wieder da, die Db? Wo kommt die her, ich denke, du hast sie gelöscht?

    Ich habe die .accdb datei aus dem debug ordner gelöscht, vs erstellt die dann nochmals..



    okay, ich verstehe! super danke für die erklärung, das wusste ich noch nicht!
    Wie gehe ich dann vor, wenn ich im Nachhinein draufkomme, dass in der Tabelle X noch ein Feld hinzukommt und ich noch die Tabelle Y anlegen möchte?