Rog*_*oid 1 sql sql-server date sql-server-2000 asp-classic
我需要从SQL Server数据库(SQL Server 2000)获取日期,日期存储如下:
2009-09-30 00:00:00.000
Run Code Online (Sandbox Code Playgroud)
我想将此日期传递给Classic ASP函数,以便在其他地方的数据库中使用此日期,但是当我得到日期时,它会将我的ASP代码转换为依赖于语言环境的版本,例如:
30/09/2009
Run Code Online (Sandbox Code Playgroud)
我只是希望日期原样格式化日期,所以它再次正确似乎是不必要的,虽然如果这是唯一的方法那么好 - 是否有任何方式将其视为字符串数据所以它保持这样,所以它可以插入以相同的日期返回数据库,无需转换?
日期不存储为'2009-09-30 00:00:00.000',它存储为8字节数字,其中前4个字节是自1900年1月1日以来的天数,其他4个字节是日期中的毫秒数.
要获得您的格式,请使用convert(varchar,dt,121).要获取原始格式使用convert(binary(8),dt)
编辑:编辑完问题后,您真正想要的是能够执行转换日期 - >字符串 - >日期.
为此你可以使用@s = convert(varchar,@ dt,121); @dt = convert(datetime,@ s,121).所有其他格式也可能都有效,只要它们始终在两个方向上应用.