存储过程实现删除表
我想写一个存储过程,来删除表。存储过程包含一个参数就是表的名字。我删除sail表时,我就把表名字传给这个存储过程,存储过程就判断这个表是否存在,存在就删除,不存在不做任何处理~~~~~~~
[解决办法]
if object_id('pro_test')is not nulldrop proc pro_testgocreate proc pro_test @tblname varchar(20)asdeclare @str varchar(200)set @str='if object_id('+quotename(@tblname,'''')+') is not null drop table '+@tblnameprint @strexec(@str)--TRY
[解决办法]
if OBJECT_ID('test','P')is not nulldrop proc testgocreate proc test( @table_name varchar(max))asdeclare @sql varchar(max)set @sql='' select @sql=@sql+'if object_id('+''''+@table_name+''''+') is not null drop table +'+@table_name+'+'+''exec (@sql)