sql-server - 在存储过程中使用数据库

标签 sql-server tsql stored-procedures

我需要创建一个存储过程,在多个数据库中创建用户。像这样的事情:

USE [database1]

CREATE USER [userLogin] FOR LOGIN [userLogin]

USE [database2]

CREATE USER [userLogin] FOR LOGIN [userLogin]

由于CREATE USER语句在当前数据库中完成其工作,我需要使用USE语句在数据库之间进行更改,但它不能在存储中使用程序。

我该怎么做?

最佳答案

动态SQL

CREATE PROCEDURE spTestProc
AS

EXEC ('USE [database1]; CREATE USER [userLogin] FOR LOGIN [userLogin]')

EXEC ('USE [database2]; CREATE USER [userLogin] FOR LOGIN [userLogin]')
GO

关于sql-server - 在存储过程中使用数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8166608/

相关文章:

sql-server - Microsoft.SqlServer.ManagedDTS.dll SQL Server 2016 位置

c# - 如何从 C# 读取数组列表并将其写入 javascript 对象

sql-server - Visual Studio 2019 缺少 SQL CLR VB

sql - 如何在sql中从日期和字符串创建日期时间

sql - 我怎样才能提高这个存储过程的性能?

java - Informix 存储过程和 JavaexecuteUpdate

sql-server - 合并语句错误调试

sql - 创建索引所需的最小行数是多少?

c# - 最接近数字的linq sql

c# - 如何知道在C#代码中具有TRY CATCH处理的存储过程中是否存在错误