国产探花免费观看_亚洲丰满少妇自慰呻吟_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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 那坡县| 开封县| 平江县| 贡山| 醴陵市| 若尔盖县| 成安县| 土默特左旗| 东平县| 封开县| 云南省| 巴彦淖尔市| 新龙县| 凤山县| 焦作市| 巍山| 吉安县| 克山县| 南漳县| 丽水市| 武鸣县| 赣榆县| 剑河县| 二连浩特市| 罗平县| 噶尔县| 临洮县| 安平县| 永春县| 民权县| 台东县| 北辰区| 嘉峪关市| 侯马市| 望都县| 石嘴山市| 东乌珠穆沁旗| 巴林左旗| 那坡县| 潮州市| 清丰县|