【发布时间】:2017-05-31 16:47:04
【问题描述】:
我有一张桌子:
CREATE TABLE [dbo].[667788]
(
a NVARCHAR(100),
b NVARCHAR(100),
c NVARCHAR(100),
d NVARCHAR(100),
e NVARCHAR(100),
f NVARCHAR(100),
t1 DATETIME,
t2 DATETIME
)
我正在尝试插入以下值:
('x','y','m','2','a','c','16/11/2012 00:00:00','06/08/2013 00:00:00'),
但我得到一个错误:
将 varchar 数据类型转换为 datetime 数据类型导致值超出范围
有人知道我提供的格式有什么办法吗?
【问题讨论】:
-
使用标准日期/时间格式'2012-11-16 00:00:00'。
-
始终使用ISO8601 符号格式化您的日期时间以避免歧义。
-
如果您使用的是 SQL Server 2008 或更新版本,我建议您在表中使用
DATETIME2(n)而不是普通的旧式笨重DATETIME
标签: sql sql-server