Sql server Windows7上的SQL Server批量插入问题

Sql server Windows7上的SQL Server批量插入问题,sql-server,security,windows-7,bulkinsert,sql-server-2005-express,Sql Server,Security,Windows 7,Bulkinsert,Sql Server 2005 Express,我有一个使用SQLServerExpress2005SP3的应用程序。这个应用程序被分发给几百个用户,每个用户都在运行XP。不过,我们公司很快就会迁移到Windows7。我的应用程序在SQL Server中使用大容量插入操作,在XP中运行良好。但是,在Windows7中,我需要以管理员身份打开SQL Server Management Studio,并执行以下命令,以使大容量插入操作正常运行: EXEC master..sp_addsrvrolemember @loginame = N'BUIL

我有一个使用SQLServerExpress2005SP3的应用程序。这个应用程序被分发给几百个用户,每个用户都在运行XP。不过,我们公司很快就会迁移到Windows7。我的应用程序在SQL Server中使用大容量插入操作,在XP中运行良好。但是,在Windows7中,我需要以管理员身份打开SQL Server Management Studio,并执行以下命令,以使大容量插入操作正常运行:

EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Users', @rolename = N'bulkadmin'

显然,在每个用户的PC上手动执行此操作是不切实际的。因此,我想知道如果用户不是以管理员身份运行我的应用程序,如何编写此脚本。是否可以在安装期间在SQL Server引导程序包中进行设置?现有安装情况如何?

您已经安装了几百个SQL Express?我假设您在一个可分离的环境中,他们需要自己的数据库

您是否拥有域上所有服务器的管理员帐户?如果是这样的话,你可以远程运行它——只要你能看到电脑,你就可以在任何地方运行它(假设设置了远程连接)

您所要做的就是使用SQLCMD从命令行运行它

在从单个位置安装了SQL server的每台计算机上远程运行相同的命令

在每次安装SQL Server时,从管理员域帐户远程运行此命令(只需更改每行计算机的名称)


无论您是否多次运行它,如果该组已经在BulkAdmins中,它将不会再次添加。

您应该在ServerFault上询问此问题-有一些管理员更适合回答此问题。为了使Raj的回答更完整一点-是的,您可以在设置过程中为其他管理用户编写脚本。手动完成安装,SQL Server将生成一个文件,您可以使用该文件使用相同的参数进行其他安装。Raj,感谢您的反馈!不幸的是,安装没有配置为接受远程连接,因此我无法通过网络发出命令。尝试时,出现以下错误:SQLCMD.EXE:SQLCMD:error:Microsoft SQL Server本机客户端10.0:在建立与SQL Server的连接时发生了与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。检查实例名称是否正确,以及SQL Server是否配置为允许远程连接。有关更多信息,请参阅SQL Server联机丛书..Brent,也感谢您的反馈。SQL Server生成的文件的名称/位置是什么?另外,您知道我可以为现有安装做些什么吗?我想非管理员不能影响他们自己的权限是有道理的,但我想我还是会问。
SQLCMD -S Station01 -Q "EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Users', @rolename = N'bulkadmin'"
SQLCMD -S Station02 -Q "EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Users', @rolename = N'bulkadmin'"
SQLCMD -S Station03 -Q "EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Users', @rolename = N'bulkadmin'"
SQLCMD -S Station04 -Q "EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Users', @rolename = N'bulkadmin'"
SQLCMD -S Station05 -Q "EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Users', @rolename = N'bulkadmin'"