如何改变datetime的默认格式(@sql server2008),在线等

wjhdtx 2010-12-18 10:05:59
select GETDATE()
------------------------
2010-12-18 10:04:23.593


我想将给日期格式改为 2010-12-18 10:04:23

即 20 | 120 ODBC 规范 | yyyy-mm-dd hh:mi:ss(24小时制)
改为 21 | 121 | yyyy-mm-dd hh:mi:ss:mmm(24小时制)

(由于程序中的日子格式都是yyyy-mm-dd hh:mi:ss)
谢谢!!!!!!!
...全文
360 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wjhdtx 2010-12-18
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 sysuleiw 的回复:]
楼主是不是在数据表的时间字段上用默认值getdate(),如果那样改一下默认值convert(varchar(19),getdate(),120)这样看看可行不?

总之用convert(varchar(19),getdate(),120) 替换掉getdate()这个就可以吧。。
难道楼主想重载getdate()函数撒?
[/Quote]
成功,和你的想法一样,保存时 使用 convert(varchar(19),GETDATE(),120),保存的数据库后是
2010-12-18 10:48:49.000,程序中使用2010-12-18 10:48:49可以匹配。
sysuleiw 2010-12-18
  • 打赏
  • 举报
回复
楼主是不是在数据表的时间字段上用默认值getdate(),如果那样改一下默认值convert(varchar(19),getdate(),120)这样看看可行不?

总之用convert(varchar(19),getdate(),120) 替换掉getdate()这个就可以吧。。
难道楼主想重载getdate()函数撒?
wjhdtx 2010-12-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 watergg 的回复:]
那就用 varchar() 存放
[/Quote]

关键程序用的类型都是datetime,而且很多表都是这样
wjhdtx 2010-12-18
  • 打赏
  • 举报
回复
没人知道吗????
类似oracle的 set nls_date_format='yyyy-mm-dd hh24:mi:ss';
WaterGG 2010-12-18
  • 打赏
  • 举报
回复
那就用 varchar() 存放

wjhdtx 2010-12-18
  • 打赏
  • 举报
回复
怪我没说清楚,现在系统做数据库移植,
之前都是oracle,比如给一个字段赋值当前日期时,会用sysdate,保存的是yyyy-mm-dd hh:mi:ss,
但现在换成sqlserver的getdate(),保存的就是yyyy-mm-dd hh:mi:ss:mmm,而我程序中都是将日期转换为yyyy-mm-dd hh:mi:ss进行的一系列操作,
所以我想改变sqlserver中datetime类型的格式为 yyyy-mm-dd hh:mi:ss,我程序就不用修改了,所以convert对我没什么用

-晴天 2010-12-18
  • 打赏
  • 举报
回复
select convert(varchar(19),getdate(),120)
飘零一叶 2010-12-18
  • 打赏
  • 举报
回复
select   CONVERT(varchar,   getdate(),   120   )  
-------------------
(无列名)
2010-12-18 10:10:42
WaterGG 2010-12-18
  • 打赏
  • 举报
回复
select CONVERT(VARCHAR(20),GETDATE(),120)

这个不行?
wjhdtx 2010-12-18
  • 打赏
  • 举报
回复 1
补充:请别告诉我用convert函数:)

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧