Zuerst wird die Tabelle I in einfügen bin versucht diese Tabelle:ORA-01722: ungültige Nummer mit to_char Zeitstempel
CREATE TABLE Message
(
MessageID varchar2(80) NOT NULL,
Message varchar2(500),
SendDate date NOT NULL,
SendID varchar2(50) NOT NULL,
Request_ID varchar2(50) NOT NULL,
PRIMARY KEY (MessageID)
);
und meine INSERT-Abfrage ist dies (Spring, Mybatis):
INSERT INTO message (
messageid
, message
, senddate
, sendId
, request_Id
)VALUES(
#{sendidjbuser} + TO_CHAR(systimestamp, 'yyyymmddhh24missff3')
, #{message}
, sysdate
, #{sendidjbuser}
, #{requestIdjbuser}
)
ich habe versucht, dies auf cmd und dieser Teil der obigen Abfrage war das Problem:
INSERT INTO message (messageId) VALUES('sendId' + TO_CHAR(systimestamp, 'yyyymmddmissff3'))
ich bin auf Oracle 11. ich Einsetzen gerade versucht nur TO_CHA R (systimestamp, 'yyyymmddmissff3'), ohne das zu einer Zeichenkette hinzuzufügen, und es hat funktioniert. Aber ich brauche diesen Teil, um zu arbeiten. Gibt es einen richtigen Weg, das zu tun?
Sie concat falsch, verwenden Sie '||' – MrSimpleMind
[Concatenation-Operator] (http://docs.oracle.com/cd/E11882_01/Server.112/e41084/Operators003.htm) in den Dokumenten. –