access转成mssql后的时间问题
发布网友
发布时间:2022-04-08 09:41
我来回答
共1个回答
热心网友
时间:2022-04-08 11:10
是这样的.
SQL Server 数据库里面, 获取日期的函数, 是 getdate。 而不是 now
1> select getdate()
2> go
-----------------------
2013-02-23 17:43:22.753
(1 行受影响)
1> select now()
2> go
消息 195,级别 15,状态 10,服务器 TESTPC\SQLEXPRESS,第 1 行
'now' 不是可以识别的 内置函数名称。
至于你的前面那个 sql
conn.Execute "update [yang_url] set [y_zt]=2,[y_time]='"&now()&"' Where [y_zt]=1"
这里的 now , 应该是 VB 的函数
因为 VB 里面执行 now() , 然后把数据 拼写成 sql , 就是具体的日期时间了
SQL Server 接受到 SQL 语句的时候, 发现 [y_time]= '2013-02-23 17:47:00'
认为是合法的数据,因此不抱错。
这么写就要抱错了。
conn.Execute "update [yang_url] set [y_zt]=2,[y_time]=now() Where [y_zt]=1"
因为这么一来, 传递给数据库的, 就是 now 了。
SQL Server 接受到 SQL 语句的时候, 发现 [y_time]= now()
而 函数里面, 又没有 now() 这个函数, 因此要抱错。