![]() |
Datenbank: PostgreSQL • Version: 8.1 • Zugriff über: ADO
PostgreSQL, INSERT INTO -
Hallo zusammen,
hoffentlich erwische ich den einen oder anderen, der mit PostgreSQL so seine Erfahrung hat :-) Ich möchte - "ganz simpel" dachte ich ursprünglich - Daten in eine Tabelle einfügen. Hierfür habe ich ein ADOConnection auf das Formular gezogen, und den String Provider=PostgreSQL.1;Password=postgres;User ID=postgres;Data Source=127.0.0.1;Location=test;Extended Properties="" definiert. Anfragen und Befehle an die DB werden durch ADOQuery realisiert. Die Datenbank heißt "test" Die Testtabelle heißt "table1", und deren Felder habe ich firstrow char 25 secondrow char 50 benannt
Delphi-Quellcode:
Führe ich den Code aus, bekomme ich die Meldung :
begin
Qry.SQL.Clear; Qry.SQL.Text := 'INSERT INTO table1 (firstrow, secondrow) VALUES (:firstfield, :secondfield);'; Qry.Parameters.ParamByName('firstfield').Value := 'firstvalue'; Qry.Parameters.ParamByName('secondfield').Value := 'secondvalue'; Qry.ExecSQL; end; 'In dem Rowset sind keine Spalten definiert' Kann mir evtl. jmd. sagen wo mein Fehler liegt? Ich dachte, ich hätte die Felder angelegt... ;) Danke! :-) [edit=alcaeus]BBCodes aktiviert. Mfg, alcaeus[/edit] |
Re: PostgreSQL, INSERT INTO -
zwei Sachen, die ich machen würde:
1) das SQL-Statement in einem anderen Programm ausführen lassen (z.B. DB-Editor oder SQL-Administrator, oder was es sonst für Postgres gibt). 2) in den ADO schauen, wo die Fehlermeldung erzeugt wird und dann weiterforschen. |
Re: PostgreSQL, INSERT INTO -
Hallo Michael,
SQL.Clear kannst du weglassen und das abschließende Semikolon im INSERT-Statement musst du weglassen. Grüße vom marabu |
Re: PostgreSQL, INSERT INTO -
Danke für die prompte Antwort,
im SQL-Editor läuft das locker durch: INSERT INTO table1 (firstrow, secondrow) VALUES ('value1', 'value2') -> Abfrage war erfolgreich durchgeführt: 1 Zeilen, 16 ms Ausführungszeit. Debuggen kann ich das nicht, das läuft in der System.pas durch einen ASM-Bereich - und das ist mir leider zu hoch... Falls noch eine Idee rumschwirrt - Melden! :-) @marabu: ja, das sind die allseitsbekannten Verzweiflungsakte... Man klemmt da noch ein clear rein, und editiert da noch etwas rum... aber letztendlich gebracht hat es leider nix... Danke trotzdem:) Michael:) |
Re: PostgreSQL, INSERT INTO -
Mir ist gerade aufgefallen, daß die Daten eingetragen werden.
D.h. daß der Fehler NACHDEM die Daten in die DB übertragen wurden, auftritt. |
Re: PostgreSQL, INSERT INTO -
Das Semikolon hast du wohl schon wieder raus genommen. Vielleicht wird deine Query über eine DataSource an eine visuelle Komponente gebunden?
marabu |
Re: PostgreSQL, INSERT INTO -
Nein, leider ebenfalls nicht. Ich habe ein komplett leeres Testprojekt erstellt, in dem ich nur die notwendigen zwei DB-Komponenten, zwei Buttons und ein Memo-Feld verwendet habe.
|
Re: PostgreSQL, INSERT INTO -
Sobald ich in der ADOConnection
CursorLocation auf "clUseServer" setze, erscheint die Fehlermeldung nicht mehr. Danke an die, die mitgedacht haben :) Grüße! Michael |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:55 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