![]() |
Datensätze insertieren
Hi,
ich arbeite mit einer mysql-DB und versuche Datensätze in meine Tabelle zu schreiben: Tabelle_Position:
SQL-Code:
Der Query.text sieht folgendermaßen aus:
+----------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra | +----------------+------------------+------+-----+---------+----------------+ | Position_ID | int(10) unsigned | | PRI | NULL | auto_increment | | Container_ID | int(10) unsigned | YES | MUL | NULL | | | Auftrag_ID | int(10) unsigned | | MUL | 0 | | | Partie_ID | int(10) unsigned | | MUL | 0 | | | Unterpartie_ID | int(10) unsigned | | MUL | 0 | | | PositionNR | int(10) unsigned | YES | | NULL | | | Menge | int(10) unsigned | YES | | NULL | | | Timestamp | timestamp(14) | YES | | NULL | | | valid | datetime | YES | | NULL | | +----------------+------------------+------+-----+---------+----------------+
SQL-Code:
Als Fehlermeldung erhalte ich:
Insert into Position values('','','1','25','37','1','4','','');
Insert into Position values('','','1','25','38','2','2','',''); Insert into Position values('','','1','25','39','3','2','',''); Insert into Position values('','','1','25','40','4','2','',''); Insert into Position values('','','1','25','41','5','1','',''); Insert into Position values('','','1','25','42','6','1','',''); Zitat:
|
Re: Datensätze insertieren
Hai barnti,
schreibe doch nur die Werte die Du brauchst:
SQL-Code:
INSERT INTO Position (Auftrag_ID,Partie_ID,Unterpartie_ID,PositionNR,Menge) VALUES (1,25,37,1,4)
|
Re: Datensätze insertieren
Benutze statt '' NULL, dann sollte es funktionieren, vorausgesetzt, dein Autoincrement funktioniert.
Grüße Mikhal |
Re: Datensätze insertieren
Du hast wohl noch Oracle im Kopf ;)
In Oracle es ein '' das gleiche wie ein NULL. Es ist also genauso NUMBER, DATE, VARCHAR2,... vielleicht wird das in mySQL anders gehandhabt. Versuch's mal mit NULL anstatt ''. Edit: 3 auf einen Streich :mrgreen: Sharkys Lösung wäre natürlich die beste ;) |
Re: Datensätze insertieren
Hallo,
danke euch. Das waren wohl die schnellsten Antworten, die ich hier je bekommen habe. :) Jo, das mit Oracle stimmt. |
Re: Datensätze insertieren
Mhm...
leider hatte ich mit euren Vorschlägen noch keinen Erfolg:
SQL-Code:
So geht es nicht. Immer noch die selbe Fehlermeldung. Und so:
INSERT INTO Position (Auftrag_ID,Partie_ID,Unterpartie_ID,PositionNR,Menge) VALUES ('1','25','37','1','4')
INSERT INTO Position (Auftrag_ID,Partie_ID,Unterpartie_ID,PositionNR,Menge) VALUES ('1','25','38','2','2') INSERT INTO Position (Auftrag_ID,Partie_ID,Unterpartie_ID,PositionNR,Menge) VALUES ('1','25','39','3','2') INSERT INTO Position (Auftrag_ID,Partie_ID,Unterpartie_ID,PositionNR,Menge) VALUES ('1','25','40','4','2') INSERT INTO Position (Auftrag_ID,Partie_ID,Unterpartie_ID,PositionNR,Menge) VALUES ('1','25','41','5','1') INSERT INTO Position (Auftrag_ID,Partie_ID,Unterpartie_ID,PositionNR,Menge) VALUES ('1','25','42','6','1')
SQL-Code:
Klappt es ebenfalls nicht. :(. Wo liegt mein Fehler?
Insert into Position values(Null, Null,'1','25','37','1','4',Null,Null);
... |
Re: Datensätze insertieren
hallo beim sql standart werden :
SQL-Code:
nicht immer eindeutig interpretiert.
wert is null oder wert = ''
deshalb sollte man beide Abfragen mit OR verbinden, oder eine Stored Procedure schreiben. raik |
Re: Datensätze insertieren
Hallo noch einaml,
ich habe festgestellt, dass die Fehlermeldung erst in der Exceptionbehandlung auftaucht. Aber diese Exception wird durch das SQL-Statement ausgelöst. Bei eingeschalteten Compilermeldungen bekomme ich den Fehler: Zitat:
SQL-Code:
Kann jemand helfen?
insert into Position values(NULL,NULL,'1','25','37','1','4',NULL,NULL);
insert into Position values(NULL,NULL,'1','25','38','1','2',NULL,NULL); insert into Position values(NULL,NULL,'1','25','39','1','2',NULL,NULL); insert into Position values(NULL,NULL,'1','25','40','1','2',NULL,NULL); insert into Position values(NULL,NULL,'1','25','41','1','1',NULL,NULL); insert into Position values(NULL,NULL,'1','25','42','1','1',NULL,NULL); |
Re: Datensätze insertieren
@raik
ich habe Deine letzte Antwort leider nicht verstanden. Kannst Du mal erklären? Danke! |
Re: Datensätze insertieren
du versuchst in deinen eingaben entweder Null oder '' einzugeben.
es kann sein, das deine felder dies aber unterschiedlich interpretieren. deshalb solltest du die eingaben
SQL-Code:
zulassen und dich nicht auf eins beschränken.
is null oder ''
raik muß jetzt weg, komme aber nachher wieder |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:49 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