更改多记录SQL查询的日期格式
我有一个在MS Access中开发的旧系统,我需要将其转换为web应用程序 在旧的应用程序中,我们有一个MS Access数据库,需要将其导入SQL Server 现在有许多表的datetime列的数据类型如下: 访问:长文本 SQL Server:nvarchar(最大值) 我已成功地将MS Access数据库导入SQL Server,但现在我遇到了日期时间转换问题 有一个表大约有86000条记录,我们需要将其列转换为数据类型datetime 当前列的nvarchar(MAX)数据类型为更改多记录SQL查询的日期格式,sql,sql-server,Sql,Sql Server,我有一个在MS Access中开发的旧系统,我需要将其转换为web应用程序 在旧的应用程序中,我们有一个MS Access数据库,需要将其导入SQL Server 现在有许多表的datetime列的数据类型如下: 访问:长文本 SQL Server:nvarchar(最大值) 我已成功地将MS Access数据库导入SQL Server,但现在我遇到了日期时间转换问题 有一个表大约有86000条记录,我们需要将其列转换为数据类型datetime 当前列的nvarchar(MAX)数据类型为 “d
“dd-mm-yyyy”这里是相同的屏幕截图:
我尝试通过谷歌来修复它,但没有任何效果。将所有字符串值转换为适当的样式:105:dd-mm-yyyy
ALTER TABLE dbo.TableName ALTER COLUMN DateNeed DATETIME NULL[NOT NULL]
GO
UPDATE TableName SET DateNeed = CONVERT(DATETIME, DateNeed , 105)
在设计模式下通过右键单击表打开该表,并将数据类型更新为datetime。这应该能解决你的问题。这可能也是您问题的答案。首先是这样做的,但它导致了一个错误:“将nvarchar数据类型转换为datetime数据类型导致值超出范围。该语句已终止。”以下是执行第一个查询时的输出:因为字段包含空值:--UPDATE TableName SET DateNeed=CONVERT(DATETIME,DateNeed,105),其中DateNeed不是NULL相同的错误,但我认为数据有问题..查询似乎正确。