国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

SQL存儲過程和觸發不能使用USE的應對方法

2024-07-21 02:44:34
字體:
來源:轉載
供稿:網友

大家都知道在SQL的存儲過程,觸發中不能使用USE。

怎么辦呢,當然可以直接用[databasename].[user].[tablename]這樣來訪問,但是某些語句必須在當前數據庫下執行,比

如sp_adduser等。

之前看到一篇文章,我測試了有問題。

原文:


這里提供一個解決方案:

使用Exec(ute)語句來改變當前數據庫,不過要注意的是,數據庫環境的更改只在Execute語句結束前有效,所以你必須把

后面的語句和Execute放到一起。Example:

create PRoc test

as

exec('use pubs') exec sp_adduser 'test'

go

exec test


我自己試了一下,根據下面的語句執行沒有問題:

使用Exec(ute)語句來改變當前數據庫。

如下:

CREATE PROCEDURE cs

AS

BEGIN

exec('use sjdbmis; select plucode from txtplu')

END

GO

 

又如:

CREATE PROCEDURE cs

AS

BEGIN

exec('use sjdbmis; exec sp_adduser ''test''')

END

GO


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桃江县| 芦山县| 禄丰县| 临桂县| 元朗区| 沈阳市| 沙河市| 博兴县| 太白县| 金溪县| 灵璧县| 勐海县| 区。| 繁峙县| 稷山县| 利辛县| 长春市| 启东市| 临西县| 天峻县| 新田县| 霞浦县| 城口县| 襄垣县| 汝城县| 浠水县| 六盘水市| 鄂尔多斯市| 自治县| 泗洪县| 浮梁县| 正蓝旗| 锡林浩特市| 五大连池市| 四会市| 双江| 郸城县| 吴堡县| 礼泉县| 扶风县| 鹤壁市|