小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

動態(tài)SQL語句

 qzg589 2005-09-09

動態(tài)SQL語句

[日期:2005-07-08] 來源:CSDN  作者: [字體: ]

1:
普通SQL語句可以用Exec執(zhí)行
eg:   Select * from tableName
      Exec(‘select * from tableName‘)
      sp_executesql N‘select * from tableName‘    -- 請注意字符串前一定要加N

2:
字段名,表名,數(shù)據(jù)庫名之類作為變量時,必須用動態(tài)SQL
eg:  
declare @fname varchar(20)
set @fname = ‘[name]‘
Select @fname from sysobjects                     -- 錯誤
Exec(‘select ‘ + @fname + ‘ from sysobjects‘)     -- 請注意 加號前后的 單引號的邊上要加空格
exec sp_executesql N‘ select ‘ + @fname + ‘ from sysobjects‘
當然將字符串改成變量的形式也可
    declare @s varchar(1000)
    set @s = ‘select ‘ + @fname + ‘ from sysobjects‘
    Exec(@s)                -- 成功
    exec sp_executesql @s   -- 此句會報錯

    declare @s Nvarchar(1000)  -- 注意此處改為nvarchar(1000)
    set @s = ‘select ‘ + @fname + ‘ from sysobjects‘
    Exec(@s)                -- 成功   
    exec sp_executesql @s   -- 此句正確,

3: 輸出參數(shù)
eg:
declare @num,
        @sqls
set @sqls=‘select count(*) from  ‘ + @servername + ‘.a.dbo.b‘
exec(@sqls)
我如何能將exec執(zhí)行的結果存入變量@num中

declare @num int,
        @sqls nvarchar(4000)
set @sqls=‘select @a=count(*) from ‘+@servername+‘.a.dbo.b‘
exec sp_executesql @sqls,N‘@a int output‘,@num output
select @num

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多