![]() |
Datenbank: MS Access • Zugriff über: TADOConnection
Fehler bei INSERT mit TADOCommand
Hallo zusammen,
In einer Routine deklariere ich lokal eine Variable des Typs TADOCommand. Innerhalb dieser Routine werden zwei unterschiedliche Insert-Befehle auf zwei Tabellen innerhalb einer Datenbank ausgeführt (MS Access). Der erste BEfehl wird ohneProbleme durchgeführt, bei dem zweiten gibt es folgende Meldung: Zitat:
Demnach verstehe ich nicht was es in der Umgebung für ein Problem sein soll. Die Anweisung sieht folgendermaßen aus:
Delphi-Quellcode:
Gruß, Moony
...
for i := 0 to ListView.Items.Count - 1 do begin myItem := ListView.Items.Item[0]; SQL := 'INSERT INTO Tabelle1 (Feld1, Feld2, Feld3, Feld4, Feld5, '; SQL := SQL + 'Feld6, Feld7, Feld8) VALUES ('; SQL := SQL + Wert1 + ', ''' + myItem.SubItems.Strings[0]; SQL := SQL + ''', ''' + myItem.SubItems.Strings[1] + ''', ''' + myItem.SubItems.Strings[2]; SQL := SQL + ''', ''' + myItem.SubItems.Strings[3] + ''', ''' + myItem.SubItems.Strings[4]; SQL := SQL + ''', ''' + myItem.SubItems.Strings[5] + ''', ''' + myItem.SubItems.Strings[6] + ''')'; Comm.CommandText := SQL; Comm.Execute; end; ... |
Re: Fehler bei INSERT mit TADOCommand
Wie sind die Felder der Tabelle1 deklarier? Und wie lange sind ei Strings die eingefügt werden sollen?
|
Re: Fehler bei INSERT mit TADOCommand
Der Feldeihenfolge wie oben aufelistet: Zahl(LongInt), Text(4), Text(4), Text(4), Text(10), Text(5), Zahl(LongInt), Text(5).
Habe das Problem gefunden. In das Feld mit der Feldlänge 5 wurde ein String mit 1 Zeichen mehr, sprich Länge 6 eingetragen. Aber wenn das zu Fehlern führt, warum hat dann Access direkt innerhalb der Abfrage keinen Fehler verursacht, sondern ganz in Ruhe den Datensatz hinzugefügrt? |
Re: Fehler bei INSERT mit TADOCommand
Zitat:
|
Re: Fehler bei INSERT mit TADOCommand
Das Leerzeichen war innerhalb des Strings, demnach weder am anfang noch am Ende des Strings. Und davon abgesehen wurde es ja so eingefügt wie innerhalb der Entwicklungsumgebung, ergo richtig übergeben & eingefügt, aber falsch nach den Feldlängendefinitionen. Alles sehr merkwürdig....... :gruebel:
Dennoch danke für den Denkanstoß... |
Re: Fehler bei INSERT mit TADOCommand
Zitat:
|
Re: Fehler bei INSERT mit TADOCommand
Auch wen das der Fall ist, wurde der String in der vollen falschen Länge eingefügt. Ich habe es ja in der Tabelle überprüft was drin steht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 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