![]() |
Datenbank: ACCESS • Zugriff über: ka
Umgang mit Datenbank
hi
ich hab noch nie was mit einer datenbank gemacht...bin also in sachen datenbanken nicht so bewandert^^ ich habe vor so ca. 4000 Datensätze in eine datenbank zu schreiben, am besten eine access datenbank. hab schon im internet gesucht, auch hier im Forum, allerdings nichts brauchbares gefunden... ich brauche irgendjemanden der mir hier kurz sagt: "du brauchst die und die komponente und mit diesem befehl legst du einen neuen datensatz an und mit diesem schreibst du deine daten rein..." :zwinker: ich hab turbo delphi 2006 explorer, kann also keine zusätzlichen komponenteninstallieren... ich hab schon ![]() hoffe ihr könnt mir helfen :spin: |
Re: Umgang mit Datenbank
Bei Access am Besten per Ado (dbGo)
|
Re: Umgang mit Datenbank
Schau mal in das Demos/ADO-Verzeichnis deiner Delphi-Installation
|
Re: Umgang mit Datenbank
hi
ich bin jetzt so weit das ich eine verbindung zu der datenbank aufgebaut habe (über TADOConnection)
Delphi-Quellcode:
Die Datenbank habe ich ersellt indem ich in Access einfach neue DB erstellt habe und diese gespeichert hab.
function TDataModule2.OpenDatabase: Boolean;
begin OpenDatabase:=true; try ADOConnection1.Open; except OpenDatabase:=false; end; end; Wisst ihr jetzt wie ich eine Tabelle darin erstellen kann und dann auf die Felder zugreifen kann? mfg.dominikkv |
Re: Umgang mit Datenbank
Entweder du gest bei Access über
![]() |
Re: Umgang mit Datenbank
ADOX kann ich nicht installieren...wei ich die Explorer Edition hab...und wie mach ich das mit CREATE TABLE?
brauch ich da ne TADOTable? |
Re: Umgang mit Datenbank
Nein, Table-Komponenten vertecken SQL vor dem unbedarften Anwender. TADOQuery wäre die richtige Komponente.
|
Re: Umgang mit Datenbank
und wie verwende ich die?
ich bin grad ein bisschen :spin2: :roteyes: :freak: ich will einfach nur wissen wie ich einen datensatz in eine Access-DB schreiben kann... kann mir einer von euch ein beispiel geben wie ich sowas mache? :feuerchen: |
Re: Umgang mit Datenbank
Bernhardt hat dir doch geraten, die Beispiele von Delphi anzusehen, haben die dir nicht geholfen?
|
Re: Umgang mit Datenbank
Zitat:
SQL-Code:
Wobei Du Textwerte z.B. mit ' escapen musst.
INSERT INTO
tabellenname (Feldname1, Feldname2, Feldname3) VALUES (Wert1, Wert2, Wert3); |
Re: Umgang mit Datenbank
|
Re: Umgang mit Datenbank
Zitat:
Zitat:
Zitat:
hab nun Folgendes:
Delphi-Quellcode:
wenn ich aber auf den button klicke kommt die fehlermeldung:
procedure TForm1.Button5Click(Sender: TObject);
begin DataModule2.ADOConnection1.BeginTrans; with DataModule2.ADOQuery1 do try Active:=false; SQL.Clear; Append; SQL.Add('INSERT INTO Fehlerbericht (Feld1, Feld2, Feld3) VALUES ("Wert1", "Wert2", "Wert3")'); ExecSQL; DataModule2.ADOConnection1.CommitTrans; except on E:Exception do DataModule2.ADOConnection1.RollbackTrans; end; end; Zitat:
|
Re: Umgang mit Datenbank
Hallo,
Zitat:
M.f.G. Kunsch Alain |
Re: Umgang mit Datenbank
ok, hat sich erledigt...ich hab die tabelle nochmal gelöscht und neu angelegt und jetzt gehts... :mrgreen:
so, noch eine frage: so kann ich in ein feld vom typ "Text" schreiben:
SQL-Code:
wie kann ich jetzt integer-variablen in ein feld vom typ "Zahl" (Long Integer) Schreiben?
SQL.Add('INSERT INTO Tabelle (Textfeld1, Textfeld2) VALUE ('+QuotedStr(variable1)+', '+QuotedStr(variable2)+');
|
Re: Umgang mit Datenbank
SQL-Code:
INSERT INTO Tabelle (<integerfeld>) VALUE (<Wert>);
|
Re: Umgang mit Datenbank
thx
wie mache ich das eigendlich wenn ich 2 tabellen in einer DB ändern will...
SQL-Code:
...geht irgendwie nicht:
with DataModule2.ADOQuery1 do
try Active:=false; SQL.Clear; SQL.Add('INSERT INTO Tabelle1 (feld1, Feld2) VALUE ("a", "b")'); SQL.Add('INSERT INTO Tabelle2 (feld1, Feld2) VALUE ("a", "b")'); ExecSQL; DataModule2.ADOConnection1.CommitTrans; except on E:Exception do DataModule2.ADOConnection1.RollbackTrans; end; Zitat:
|
Re: Umgang mit Datenbank
Am besten mit Parametern:
Delphi-Quellcode:
with DataModule2.ADOQuery1 do
try Active:=false; SQL.Text := 'INSERT INTO Tabelle1 (feld1, Feld2) VALUE ( :w1, :w2)'); Paramters.ParamByName( w1, 'a'); Paramters.ParamByName( w2, 'b'); ExecSQL; Paramters.ParamByName( w1, 'c'); Paramters.ParamByName( w2, 'd'); ExecSQL; ... DataModule2.ADOConnection1.CommitTrans; except on E:Exception do DataModule2.ADOConnection1.RollbackTrans; end; |
Re: Umgang mit Datenbank
so wie ich das interpretiere legt er dann aber 2 datensätze in einer tabelle an...ich will aber den ersen datensatz in tabelle1 und den zweiten datensatz in tabelle2...und die 2 tabellen haben unterschiedliche spaltennamen...
|
Re: Umgang mit Datenbank
Sorry hab das mit Tabelle2 überlesen. TADOQuery kann immer nur ein Statement auf einmal ausführen. Für mehrere brauchst du TADOCommand.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:05 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 by Thomas Breitkreuz