AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi FOREIGN KEY Syntax mit SQLite?
Thema durchsuchen
Ansicht
Themen-Optionen

FOREIGN KEY Syntax mit SQLite?

Ein Thema von AlexII · begonnen am 24. Okt 2012 · letzter Beitrag vom 24. Okt 2012
Antwort Antwort
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#1

FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 12:31
Datenbank: SQLite • Version: 3 • Zugriff über: SQLite4Delphi Wrapper von Tim Anderson
Hallo,

bin gerade dabei meine Tabellen mittels Foreign Key zu verbinden, aber mir gelingt die SQLite+Delphi Syntax nicht. Hier mein Code:

Delphi-Quellcode:
sSQL := 'CREATE TABLE buecher ([buecherid] INTEGER PRIMARY KEY NOT NULL, [titel] VARCHAR (255) NOT NULL,';
sSQL := sSQL + 'FOREIGN KEY (fk_entleiher_id) REFERENCES entleiher(entleiherid));';
Ich bekomme die Fehlermeldung: ...: near "(fk_entleiher_id)": syntax error.

Bin jedem dankbar wer mir weiter helfen kann, danke!
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.007 Beiträge
 
Delphi 12 Athens
 
#2

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 12:44
Nimm mal das Komma am Ende der ersten Zeile weg.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#3

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 12:48
Hilft leider nicht...
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 12:53
fk_entleiher_id fehlt ja auch in der Feldliste, d.h. Du willst einen FK auf ein nicht existentes Feld setzen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#5

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 12:59
fk_entleiher_id fehlt ja auch in der Feldliste, d.h. Du willst einen FK auf ein nicht existentes Feld setzen.
Stimmt, man bin ich blind...

Sag mal muss man den Foreign Key in SQLite aktivieren, etwas so:

sldb.ExecSQL('PRAGMA foreign_keys=ON;'); oder wird das inzwischen standardmäßig aktiviert?
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 13:01
Was meinst Du mit "Aktivieren"?

[edit] Ah, da war Dein Edit noch nicht zu sehen. Diesen Artikel kennst Du schon?
Zitat:
Foreign key constraints are disabled by default (for backwards compatibility), so must be enabled separately for each database connection separately.
[/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH (24. Okt 2012 um 13:04 Uhr)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#7

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 13:03
Hab gelesen, dass bei SQLite Foreign Key standardmäßig nicht unterstützt wird, man muss es manuell aktivieren und mit TRIGGER damit arbeiten.

Hier hab ich das her: http://glossar.hs-augsburg.de/SQLite...Keys_erzwingen
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 13:05
und noch eine Edit-Überschneidung. Antwort siehe oben.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#9

AW: FOREIGN KEY Syntax mit SQLite?

  Alt 24. Okt 2012, 13:07
Ok, Thx
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz