【发布时间】:2016-09-22 23:14:53
【问题描述】:
我有一个如下所示的存储过程:
create procedure test as
begin
if exists(
select 1 from sys.columns
where Name = N'Column2'
and Object_ID = Object_ID(Table2')
)
select Column2 from Table2
end
我想在 Column2 不存在的 db 上运行此过程。我不想从 SP 中取出存在检查。目前的错误是:
消息 207,级别 16,状态 1,程序测试,线路 39 [Batch Start Line 0] 列名“Column2”无效。
有什么办法吗?为什么是,为什么不是?
如果您检查存在表并选择有效的不存在表,为什么?
【问题讨论】:
标签: sql-server tsql stored-procedures