exec('select * into '+@myue+' from data where month(rs)<month(getdate())')
exec('alter table '+@myue+' add constraint sp_bh3 primary key (bh)')
exec('alter table '+@myue+' add constraint sp_bh3 primary key (bh)')
declare @myue varchar(20)
DECLARE @SQL varchar(8000)
set @myue='data'+substring(cast(getdate() as varchar(10)),7,10)+substring(cast(getdate() as varchar(10)),1,2)
if exists(select * from dp_data where month(dprs)<>month(getdate()))
begin
SET @SQL='select * into '+@myue+' from data where month(rs)<month(getdate()) '
EXEC(@SQL)SET @SQL='alter table '+@myue+' add constraint sp_bh3 primary key (bh)'
EXEC(@SQL)delete from data where month(rs)<month(getdate())
end
go
变量不能直接做表名
但是用exec()可以执行一个字符串的语句