Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL查找无效日期_Sql_Sql Server - Fatal编程技术网

SQL查找无效日期

SQL查找无效日期,sql,sql-server,Sql,Sql Server,您好,我正在尝试从Access导入一些数据到SQL server,但是,当我运行导入时,出现此错误 Hresult: 0x80004005 Description: "Invalid date format". (SQL Server Import and Export Wizard) 我喜欢尝试使用脚本来解决这个问题,所以我不需要手动更正所有字段——问题是,有没有SQL可以做到这一点 好的,错误是清楚的,但是如果你告诉我,仍然是模糊的…比如,错误的日期是空的吗?只是格式不对?只是腐败?所

您好,我正在尝试从Access导入一些数据到SQL server,但是,当我运行导入时,出现此错误

Hresult: 0x80004005  Description: "Invalid date format".
 (SQL Server Import and Export Wizard)
我喜欢尝试使用脚本来解决这个问题,所以我不需要手动更正所有字段——问题是,有没有SQL可以做到这一点

好的,错误是清楚的,但是如果你告诉我,仍然是模糊的…比如,错误的日期是空的吗?只是格式不对?只是腐败?所有这些

我希望你明白我来自哪里


提前谢谢

你的问题很模糊。我的建议是将数据加载到SQLServer中的暂存表中。在这个表中,所有列都是足够长的字符串,可以容纳这些值

然后,您可以调查staging表以查找问题。例如,您可以运行:

select date
from stagingtable
where isdate(date) = 0 and date is not null;
解决问题后,可以使用以下方法加载到最终表中:

insert into finaltable(col1, . . . , coln)
    select col1,
           (case when col2 <> 'N/A' then cast(col2 as date) end) as col2,
           . . .
    from stagingtable;
插入最终表(col1,…,coln)
选择col1,
(当col2‘不适用’然后将(col2作为日期)结束)转换为col2时,
. . .
从阶段表;