首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL存储过程,这个字符串如何拼接哈?初学者

2013-08-01 
SQL存储过程,这个字符串怎么拼接哈?菜鸟求助.ALTER PROCEDURE USP_DBBackup@BackPath nvarchar(100)@BackN

SQL存储过程,这个字符串怎么拼接哈?菜鸟求助.

ALTER PROCEDURE USP_DBBackup
@BackPath nvarchar(100)
@BackName nvarchar(50)
AS
SET NOCOUNT ON 
 declare cur cursor for
 select name from master..SysDataBases--获取数据库名.
 declare @cur nvarchar(4000)
 open cur
 fetch next from cur into @cur
 while @@fetch_status = 0
 begin
 exec(@cur)
 fetch next from cur into @cur
 end
 declare @name nvarchar(4000)
 set @name = ''
 select @name += @cur + ','
backup database Left(@name, Len(@name) - 1) to disk= @BackPath + '\'+@BackName--备份以上获得的数据库.


以上是我在 .mdf数据库获得数据库,然后备份.因为我定义的是动态的两个参数.所以,拼起来,貌似搞不定...大神帮忙...
[解决办法]
用这个,已经测试通过。
alter PROCEDURE USP_DBBackup
    @BackPath nvarchar(100),
    @BackName nvarchar(50)
AS
  SET NOCOUNT ON 

      declare @name nvarchar(4000)
  select @name = rtrim(ltrim(@name))

  if exists (select * from sysdatabases where name = 'YJUIDB')
    set @name= 'YJUIDB'

  declare @outpath nvarchar(4000)
  select @outpath = @BackPath +'\'+ @BackName

    backup database @name to disk= @outpath

热点排行