这个存储过程为什么报错说变量没有声明 麻烦哪位看一下

canidy 2005-01-07 11:02:46
create procedure tmp_cp as
declare @FromTableName varchar(20),
@ToTableName varchar(30)
declare Cur_Tab CURSOR for select [name] from sysobjects where type='u' and [name] like 'z_tab%' order by [name]
open Cur_tab
FETCH Cur_tab into @FromTableName
WHILE @@FETCH_STATUS=0
BEGIN
set @ToTableName='ygcwdb.dbo.'+ @FromTableName
INSERT INTO @ToTableName values (select * from @FromTableName)
FETCH Cur_tab into @FromTableName
END
CLOSE Cur_tab
DEALLOCATE Cur_tab
return
GO
...全文
94 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
郭大侠_ 2005-01-07
  • 打赏
  • 举报
回复
INSERT INTO @ToTableName values (select * from @FromTableName)
这个错了
不能用变量当表名
改为:
exec('insert into ' + @ToTableName +' values (select * from ' + ' @fromtablename ' + ')')
jiang130 2005-01-07
  • 打赏
  • 举报
回复
同意樓上
meilian01 2005-01-07
  • 打赏
  • 举报
回复
exec('insert into ' + @ToTableName +' values (select * from ' + ' @fromtablename ' + ')')
Softlee81307 2005-01-07
  • 打赏
  • 举报
回复
請把這句改成 insert into @ToTableName
select * from @fromtablename
再測試一下
canidy 2005-01-07
  • 打赏
  • 举报
回复
这个存储过程我是想把一个库的表复制到另外一个库 因为用DTS导的过程出错了
报错行是insert into @ToTableName values (select * from @fromtablename)

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧