SQL 查询做奇怪的事情
如果我在 SQL Server Express 2008 上运行此查询:
Insert NoteBook (Date, Note) Values ('11/04/2011 11:02:46', 'test')
它将日期存储为 04/11/2011
如何防止这种情况发生?
If I run this query on SQL Server Express 2008 :
Insert NoteBook (Date, Note) Values ('11/04/2011 11:02:46', 'test')
It stored the date as 04/11/2011
How can I prevent this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 ISO-8601 格式:
YYYYMMDD
(或YYYY-MM-DDTHH:MM:SS
) - 无论您的 SQL Server 语言和区域设置如何,它始终有效。SQL Server 中的日期不以任何特定的面向字符串的格式存储 - 日期就是日期,无论您看到什么。
您会看到日期的字符串表示形式 - 但同样:它不是以这种方式存储 - 因此您无法“阻止”它以这种方式存储...
检查 SQL Server 中的语言设置:
什么你有语言吗??该语言定义了显示日期的默认格式。
Use the ISO-8601 format:
YYYYMMDD
(orYYYY-MM-DDTHH:MM:SS
) - it works always, regardless of your SQL Server language and locale settings.The date in SQL Server is NOT stored in any particular string-oriented format - a date is a date is a date, regardless of what you see.
You see a string representation of the date - but again: it's NOT stored that way - and thus you cannot "prevent" it from being stored that way...
Check your language settings in SQL Server:
What language do you have?? The language defines the default format in which dates are shown.