如何在SQL Server 2008中设置默认日期格式dd/mm/yyyy?
我有一个 Excel 文件,其中包含一列格式为 dd/mm/yyyy 的日期。当我尝试使用 openrowset 导入它时,它说存在数据类型不匹配。我有一个表,其中日期定义为类型date
。现在,我知道 SQL Server 中的默认日期格式是 yyyy-mm-dd。我怎样才能避免这种冲突?有没有办法让默认的日期
类型为dd/mm/yyyy?我每天都需要执行此导入操作,并且它必须是自动化的,因此我不能承受它在中间失败的后果。我尝试使用 sp_addlanguage
将其设置为英式,因为默认日期类型是 dd/mm/yyyy ,但它不起作用:(。我使用 SQL Server 2008 和 Windows 7,如果有任何帮助,请帮助我!
I have an Excel file that contains a column full of dates in the dd/mm/yyyy format. When I try to import it using openrowset, it said that there was a datatype mismatch. I have a table where the date is defined as type date
. Now, I know that the default date format in SQL Server is yyyy-mm-dd. How can I avoid this conflict? Is there a way I can make the default date
type be dd/mm/yyyy? I need to do this import operation everyday and it has to be automated and so I cannot afford it to fail in between. I tried using sp_addlanguage
to make it British as the default date type is dd/mm/yyyy there, but it didn't work :(. I'm using SQL Server 2008 and Windows 7, if that is of any help. Please help me out! Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以在插入之前
CONVERT
传入的数据。因此,在 openrowset 语句中选择字段时,可以使用CONVERT
语句将其包围。下面是一个示例:这是一个英国风格的日期,但是如果您运行它,您可以看到它已将其转换为 SQL 友好的格式。
You could
CONVERT
the incoming data before you insert it. So, in the openrowset statement, where you select the field, you could surround it with aCONVERT
statement. Here's an example:This is a UK style date, but if you run it you can see that it's converted it to SQL-friendly format.