[英]SQL: error on invalid column name that does exist
我正在尝试创建一个包,该包将从文件中复制数据并将其放入新表中。 到现在为止还挺好。 但是如果由于某种原因该程序包失败,我希望它截断新添加的数据。 所以,我希望它执行此语句
如果存在(从系统对象的SELECT * FROM object_id = OBJECT_ID(N'TABLE_NAME')并键入(N'U'))从TABLE_NAME中删除WHERE date ='2015-11-10'
但是我一直收到此错误:“错误:从MYTABLE删除时出现0xC002F210,执行SQL任务:执行查询“如果存在(SELECT * FROM sys.objects WHERE object _...”)失败,并出现以下错误:“无效的列名' “。可能的失败原因:查询问题,“ ResultSet”属性未正确设置,参数未正确设置或连接未正确建立。”
但是MYTABLE确实有一个称为“日期”的列...我只是不知道问题出在哪里,而Google却无法帮助我。
我相信“日期”是保留字,请尝试使用[日期]
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'TABLE_NAME') AND [type] in (N'U')) DELETE FROM TABLE_NAME WHERE [date]='2015-11-10'
SQL Server保留字: MSDN
由于日期是SQL Server中的保留字,因此将括号中的列名删除
[日期]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.