【发布时间】:2018-07-20 22:45:54
【问题描述】:
我正在尝试将列的数据从 varchar(255) 转换为 Timestamp。
我查看了 Microsoft 文档,但它不起作用
代码:
SELECT
["Data Nascimento"]
FROM
[leoninos] AS Original,
CONVERT(VARCHAR, ["Data Nascimento"]) AS VARCHAR,
CONVERT(timestamp(6, 4), ["Data Nascimento"]) AS timestamp;
错误:
消息 156,第 15 级,状态 1,第 53 行。
关键字“CONVERT”旁边的语法不正确。
什么是语法错误?
提前致谢。
【问题讨论】:
-
timestamp不是日期时间列类型!类型名称timestamp实际上是rowversion的同义词,rowversion是一种特殊的内置类型,其行为类似于序列号。我想你想要datetime或datetime2。 (在 SQL Server 2008 中,timestamp名称已被正式弃用,以帮助防止这种混淆)。 -
另外,您在查询的
FROM块中有两个CONVERT语句 - 我假设这些确实应该在语句的SELECT部分中
标签: sql sql-server syntax type-conversion