select @sql=' sp_rename' pm_ks_traffic_data_day,@tablename解决办法

select @sql=' sp_rename' pm_ks_traffic_data_day,@tablename
declare @tablename varchar(1000),@sql varchar(1000)
select @tablename = 'Crm'+replace(convert(varchar(100),getdate(),112),'-','-') 
select @sql=' sp_rename' " pm_ks_traffic_data_day", "@tablename"
exec (@sql)

将数据库中的表以当前系统时间命名,如何改正上面的语句。
------解决思路----------------------

create table pm_ks_traffic_data_day(id int)
go
declare @tablename varchar(1000),@sql varchar(1000)
select @tablename = 'Crm'+replace(convert(varchar(100),getdate(),112),'-','-') 
select @sql=' sp_rename pm_ks_traffic_data_day ,' + @tablename
exec (@sql)
go
select id , name  ,crdate from sysobjects where name like 'Crm%'
go
drop table Crm20151030
go


注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。
id          name                                                                                                                             crdate
----------- -------------------------------------------------------------------------------------------------------------------------------- -----------------------
729157743   Crm20151030                                                                                                                      2015-10-30 10:24:08.807

(1 行受影响)