Fehler im Insert statement

nordlender

Benutzer
Beiträge
7
Hallo zusammen,

Ich versuche eine Tabelle erweitern, bekomme dabei eine Fehlermeldung. Könnte mir jemand helfen?

INSERT INTO KEZ_MDATATYPE (PLANTID,DIVISIONID,MASTERDATATYPEID,WEBPATH,URLBUILDER) VALUES (1,4,1, '/sap/bc/gui/sap/its/webgui?~webgui_simple_toolbar=1&~singletransaction=1&~transaction={0}%20SVALD-VALUE={1};DYNP_OKCODE=FURT', 'de.audi.comp.kezfw10.model.masterdata.DimensionUrlBuilder');
Fehlermeldung:
contains the syntax error: - 1:207 - SQL syntax error: this SQL statement contains an unterminated string literal "/sap/bc/gui/sap/its/webgui?~webgui_simple_toolbar=1&~singletransaction=1&~transaction={0}%20SVALD-VALUE={1}"
Ich verstehe, dass in dem dritten Parameter, nach dem Semikolon, das Problem auftaucht. Habe aber schon unterschiedliche Varianten ausprobiert, leider ohne Erfolg.

Danke im Voraus.
 
Werbung:

thomas_w

Datenbank-Guru
Beiträge
104
AW: Fehler im Insert statement

Na ja, da kann man nur raten.

Eventuell ist hier (das Leerzeichen zwischen Ur und lBuilder) ein nicht darstellbares Zeichen versteckt. Die Anzahl an ' Trennzeichen sind korrekt.

Code:
[B]..DimensionUr lBuilder...[/B]
Benutze doch Prepared Statement + Bind + Execute. Damit kannst Du solche Probleme am einfachsten Lösen.

Grüße
Thomas
 

nordlender

Benutzer
Beiträge
7
AW: Fehler im Insert statement

Der Fehler ist nur durch kopieren entstanden, normalerweise habe ich da kein Leerzeichen.


Code:
INSERT INTO KEZ_MDATATYPE (PLANTID,DIVISIONID,MASTERDATATYPEID,WEBPATH,URLBUILDER) VALUES (1,4,1,'/sap/bc/gui/sap/its/webgui?~webgui_simple_toolbar=1&~singletransaction=1&~transaction={0}%20SVALD-VALUE={1};DYNP_OKCODE=FURT','de.audi.comp.kezfw10.model.masterdata.DimensionUrlBuilder');
 

thomas_w

Datenbank-Guru
Beiträge
104
AW: Fehler im Insert statement

An dem INSERT sehe ich jetzt keinen Fehler. Die Anzahl der ' - Zeichen stimmt. Kannst Du den INSERT direkt in eine DB2-Kommandozeile ausführen?

Grüße
Thomas
 

Charly

Datenbank-Guru
Beiträge
306
AW: Fehler im Insert statement

Hallo nordlender,

wenn wir hier von DB2 reden könnte es so gehen:

Code:
--#SET DELIMITER !
 
INSERT Statement
 
--#SET DELIMITER ;

oder so:

Code:
--#SET TERMINATOR !
 
INSERT Statement
 
--#SET TERMINATOR ;



Viele Datenbanken sehen das nicht so genau mit dem Semikolon.
DB2 anscheinend schon.

Gruß Charly
 
Werbung:

thomas_w

Datenbank-Guru
Beiträge
104
AW: Fehler im Insert statement

Hallo Charly,

nette Idee, stimmt aber leider nicht. Ich habe es schnell mal bei mir ausprobiert.:

Code:
SELECT * FROM sysibm.sysversions;

VERSIONNUMBER ! VERSION_TIMESTAMP ! ..
9010000       ! 16.02.2008 ...    ! ..

CREATE TABLE test_insert (
 daten VARCHAR(100) NOT NULL
);

INSERT INTO test_insert VALUES
( 'de.auto.{1};.//blalba/!.&%&%&%&' );


INSERT INTO test_insert VALUES
( 'de.auto.{1};.//blalba/!.&%&%&%&' );
------------------------------------------------------------------------------
INSERT INTO test_insert VALUES ( 'de.auto.{1};.//blalba/!.&%&%&%&' )
DB20000I  Der Befehl SQL wurde erfolgreich ausgeführt.
Also direkt im "Befehlseditor" klappt es bei mir gut.

Grüße
Thomas
 
Oben