【发布时间】:2022-01-18 15:12:14
【问题描述】:
我正在创建一个数据库,我正在尝试用值填充表,但出现错误
消息 241,第 16 级,状态 1,第 3 行
从字符串转换日期和/或时间时转换失败。
查询代码:
INSERT INTO Register_of_crimes (id_crime , Date, List_of_crime , Fine)
VALUES ('1', '1989-3-6', 'Rušenie nočného kľudu', '30'),
('2', '1991-3-3', 'Poškodzovanie cudzej veci', '50'),
('3', '2011-3-3', 'Pitie alkoholu na verejnosti', '20'),
('4', '1999-6-5', 'Výtržnosti na verejnosti', '40')
我创建的表:
CREATE TABLE Register_of_crimes
(
id_crime int,
Date date,
List_of_crime varchar (150),
Fine money,
PRIMARY KEY (id_crime)
)
感谢您的所有回答和建议
【问题讨论】:
-
您使用的是哪种数据库产品?从错误消息来看,我希望它不喜欢您的日期格式,您应该使用标准格式,例如与 ISO8601 兼容的格式,例如
YYYY-MM-DD。因此,例如,我希望1991-3-3需要更改为1991-03-03。 -
还可以尝试非 ASCII 字符的国家字符文字。例如。
N'Rušenie nočného kľudu'. -
并且不需要将数值作为字符串传递,即将 2 作为 2 传递,而不是 '2'。
-
您使用的是哪个数据库?日期格式标准取决于您使用的数据库。
-
我想,把 List_of_crime 改成 nvarchar(150) 来处理特殊字符会很好
标签: sql sql-server database