关于新建帐套,请看看下面的这个sql语句

pearlz 2002-01-09 04:18:46
CREATE PROCEDURE back @dbold nchar(6),@dbnew nchar(6)
AS
Backup database @dbold
to disk='d:\gz\gz.bak'
RESTORE FILELISTONLY
FROM DISK ='d:\gz\gz.bak'
RESTORE DATABASE @dbnew
FROM DISK ='d:\gz\gz.bak'
WITH MOVE 'gz_data' TO 'c:\mssql7\data\gz05.mdf',
MOVE 'gz_log' TO 'c:\mssql7\data\gz05.ldf',
replace
delete from gz05..paycount where 月份<>11
update gz05..paycount set gz05..paycount.月份=1
这里的路经和数据库名gz05在pb里只能是常数吗,不能变量,自己设定吗
...全文
112 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiantianpb 2002-01-09
  • 打赏
  • 举报
回复
当然可以用execute(@str_sqlexecute)
pearlz 2002-01-09
  • 打赏
  • 举报
回复
那么存储过程中的路径和数据库名呢,能不能改用变量
tiantianpb 2002-01-09
  • 打赏
  • 举报
回复
Declare ndzj procedure for
ndjz @return=:back @dbold=:dbold1, @dbnew=:dbnew1
using sqlca;

sqlca.autocommit=true
execute ndzj;
tiantianpb 2002-01-09
  • 打赏
  • 举报
回复
加上:变量前
pearlz 2002-01-09
  • 打赏
  • 举报
回复
我在pb中是这样写的
Declare ndzj procedure for @return=back @dbold=dbold1, @dbnew=dbnew1
using sqlca;

sqlca.autocommit=true
execute ndzj;
其中dbold1,dbnew1是变量,这样不行,但是改成常量就可以了
tiantianpb 2002-01-09
  • 打赏
  • 举报
回复
用execute()

401

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 非技术版
社区管理员
  • 非技术版社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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