![]() |
Datenbank: SQLite • Version: 3 • Zugriff über: dbExpress
Abfrage mit zwei Datenbanken ?
Hallo zusammen -)
Folgendes Problem: Ich habe zwei getrennte Datenbanken-Dateien. Ich versuche, die beide Dateien (Verbindung über SQLConnection) anzusprechen. Ich muss auf beide Datenbanken gleichzeitig zugreifen können: Dafür gibt es die Methode ATTACH DATABASE: ![]() ![]()
Delphi-Quellcode:
Meine Abfragen sehen dann so aus:
procedure TmyForm.connect(Sender: TObject);
begin try SQLConnection.connected:= False; SQLConnection.Clear; SQLConnection.Params.Add('ATTACH Databas 'C:\Users\Data\DatabaseName.db' AS X1'); SQLConnection.Params.Add('ATTACH Databas 'C:\Users\Data\DatabaseName2.db' AS Y1'); SQLConnection.Connected:= True; ... end; end;
Delphi-Quellcode:
was mache ich falsch?
command:= 'Select ID From X1.mytable1'
command:= 'Select Nr From Y1.mytable6' Vielen Dank für eure Hilfe |
AW: Abfrage mit zwei Datenbanken ?
Falsch ist schon mal das du uns nicht sagst was denn nun passiert.
Gibt es eine Fehlermeldung? Wie lautet die? ... |
AW: Abfrage mit zwei Datenbanken ?
Du hast nicht geschrieben, was überhaupt das Problem ist.
Das ist eigentlich so üblich in Foren, Fehlernummer, Fehlertext usw. Aber ich vermute mal, dass der Pfad in der Attach Anweisung nicht richtig gequotet ist. Probier mal quotedStr, um den Dateiname selbst in Hochkomma zu setzen und das konkatenierst Du dann mit + Zeichen in die Anweisung. Aber vielleicht ist auch was ganz anderes falsch bei diesem Ratespiel und ich hätte besser den Telefonjoker genommen. ;) |
AW: Abfrage mit zwei Datenbanken ?
Außerdem solltest du dir noch jeweils ein E kaufen :stupid:
|
AW: Abfrage mit zwei Datenbanken ?
Sorry..
Zitat:
no such table Y1.mytable6 |
AW: Abfrage mit zwei Datenbanken ?
An deiner Stelle würde ich erst einmal per Hand versuchen, das mit dem sqlite3-Kommandozeilentool zu testen und es erst dann mit Delphi umzusetzen, wenn es da funktioniert. Damit bekommst du das Feedback schneller und kannst besser "Debuggen".
Zitat:
|
AW: Abfrage mit zwei Datenbanken ?
Zitat:
ich muss auf die beide Datenbanken gleichzeitig zugreifen. Deswegen habe ich ATTACH-Anweisung verwendet. Aber irgendwas mache ich falsch.. (Syntax..) |
AW: Abfrage mit zwei Datenbanken ?
Zitat:
"SQLite ATTACH DTABASE statement is used to select a particular database, and after this command, all SQLite statements will be executed under the attached database." Edit -> hier stand Blödsinn ;) |
AW: Abfrage mit zwei Datenbanken ?
Hm, also ich meine, dass die Commands immer gegen "beide" laufen, erst wenn Tabellennamen mehrdeutig sind, müsste man sich präzisieren, sonst wird per default die zuletzt verwendete genommen.
Außerdem: Wenn ich im Normalbetrieb 1 DB nutze und manchmal auf 2 gleichzeitig zugreifen muss, brauch ich doch nicht 2 zu attachen oder? Ich bin doch eh mit der StandardDB verbunden. |
AW: Abfrage mit zwei Datenbanken ?
Hallo,
habe zwar keine Ahnung von SQLite aber schau mal hier: ![]() Da wird einmal attach database database1.db as db1; attach database database2.db as db2; und ein Anderer schrieb attach 'database1.db' as db1; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz