Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
embedded DB--- kein SQlite
Nexmo
myCSharp.de - Member



Dabei seit:
Beiträge: 36
Herkunft: Eggenstein-Leopoldshafen

Themenstarter:

embedded DB--- kein SQlite

beantworten | zitieren | melden

Verwendetes Datenbanksystem: aktuell SQlite

Hallo,

ich verzweifle gerade etwas.

ich benötige eine embedded DB welche FK und PK unterstützt und sich automatisch löschen bzw. updaten lässt.
also autoupdate und autodelete der FK-abhängigen Tabelle bei Änderungen.

SQlite funktioniert nur mit triggern. diese sollen aber nicht verwendet werden. Leider unterstützt SQlite keine FK in diesem Sinne.

Zitat:" SQLite unterstützt standartmäßig keine FOREIGN KEYS (Fremdschlüssel). Man kann diese zwar bei erstellen von Tabellen definieren, jedoch werden diese, wie gesagt, ignoriert."

Quelle: SQLite Foreign Keys erzwingen – GlossarWiki


Kann mir hier jemand helfen??

Die DB soll in ein C# WPF programm eingebettet werden, also teil von dem Programm sein und nicht zusätzlich installiert werden müssen, wie MySQL oder SQL-Server, ect.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16205

beantworten | zitieren | melden

Es gibt genau zwei weit verbreitete, aktuelle Embedded SQL Produkte:
- Sqlite: Standalone mit eingeschränkten SQL Features
- LocalDB: benötigt eine Client Installation

Vielleicht gibts noch irgendwelche hidden projects, das mag sein.
Aber ansonsten: leider gibts so ein Einhorn nicht.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
Th69
myCSharp.de - Experte

Avatar #avatar-2578.jpg


Dabei seit:
Beiträge: 4189

beantworten | zitieren | melden

Es gibt auch noch Firebird (Datenbank) (u.a. als embedded): Firebird
Man benötigt dafür dann den zugehörigen .NET Provider.

Sowohl PK als auch FK sollte unterstützt sein: CREATE TABLE als auch Keys and unique indices

Edit: Als Schnelleinstieg: Embedded Firebird: Full-Featured Embedded Database with 2 MB Runtime (auch wenn die dort verwendeten Versionen veraltet sind)
Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von Th69 am .
private Nachricht | Beiträge des Benutzers
Nexmo
myCSharp.de - Member



Dabei seit:
Beiträge: 36
Herkunft: Eggenstein-Leopoldshafen

Themenstarter:

beantworten | zitieren | melden

Also habe ich tatsächlich in C# keine andere Möglichkeit als mit SQLite zu arbeiten.

was ist denn dieser .net Provider?
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16205

beantworten | zitieren | melden

Das hat mit C# oder .NET nichts zutun, das geht Dir mit anderen Runtimes auch so.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
Nexmo
myCSharp.de - Member



Dabei seit:
Beiträge: 36
Herkunft: Eggenstein-Leopoldshafen

Themenstarter:

beantworten | zitieren | melden

hm, ok..
also laut meinem Chef soll es da wohl etwas geben. nur er sagt mir nicht was das für eine ist.
er meinte nur, ich soll da mal suchen, mit welcher embedded DB das möglich ist.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16205

beantworten | zitieren | melden

Toller Chef Netter Time-waste.

Kommt wahrscheinlich am Ende was raus, das uralt ist oder gar keine Datenbank ist.
Würde mich nicht wundern.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
Th69
myCSharp.de - Experte

Avatar #avatar-2578.jpg


Dabei seit:
Beiträge: 4189

beantworten | zitieren | melden

Zitat von Nexmo
Also habe ich tatsächlich in C# keine andere Möglichkeit als mit SQLite zu arbeiten.
@Nexmo: Was hast du denn an meiner Antwort nicht verstanden?
Zitat von Nexmo
was ist denn dieser .net Provider?
Das ist der Datenbank-Treiber für .NET (man braucht dann nur die zugehörigen DLLs und die Datenbankdatei in das Release-Verzeichnis kopieren, so daß du dieses en-block weitergeben kannst - ohne Installation beim Anwender).

Auch für SQLite bräuchtest du den passenden .NET Provider.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Th69 am .
private Nachricht | Beiträge des Benutzers
Jompikumpi
myCSharp.de - Member



Dabei seit:
Beiträge: 44

beantworten | zitieren | melden

Ich bin zwar nicht in der Datenbankentwicklung, aber bei uns wird VistaDB Database Engine verwendet.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Jompikumpi am .
private Nachricht | Beiträge des Benutzers