我必须运行下面的查询,但它给了我错误。
INSERT ALL
INTO tests VALUES
(
'25-10-2015 15:58:02',
'a',
238530
)
INTO tests VALUES
(
'25-10-2015 15:58:02',
'b',
1234
)
INTO tests VALUES
(
'25-10-2015 15:58:02',
'c',
4759
)
INTO tests VALUES
(
'25-10-2015 15:58:02',
'd',
36734
)
SELECT * FROM dual;有没有办法在字符串中插入带空格的字符串。
发布于 2015-10-26 00:10:59
你当然可以插入一个空格,只要它在引号(')之间。但是,日期是不同的类型,可能需要转换。例如:
insert into tests values (TO_DATE('25-10-2015 15:58:02'...), 'd', 36734)但是请注意,您需要引用TO_DATE syntax以进行正确的格式设置。主要的一点是,您需要检查测试模式,以验证它正在查找日期。如果它是varchar格式或其他字符串类型,那么它应该可以工作,除非您的字符串太长。但是,如果它是一个日期,则需要传递一个日期。
发布于 2015-10-26 00:11:23
'25-10-2015 15:58:02'上面是字符串,而不是日期。您必须使用TO_DATE和适当的格式模型将其显式转换为日期。
例如,
INSERT ALL
INTO tests VALUES
(
TO_DATE('25-10-2015 15:58:02','DD-MM-YYYY HH24:MI:SS'),
'a',
238530
)发布于 2015-10-26 01:20:37
除了Oracle专有的TO_CHAR之外,您还可以编写一个Standard SQL Timestamp文字(包括Oracle在内的大多数DBMSes都支持它),TIMESTAMP后跟一个'yyyy-mm-dd hh:mi:ss‘字符串(独立于NLS_DATE_FORMAT):
TIMESTAMP '2015-10-25 15:58:02'https://stackoverflow.com/questions/33331784
复制相似问题