在sql server2000中生成的脚本文件,选7。0兼容,在执行到
/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
exec sp_addrolemember N'db_datawriter', N'sysadmin'
GO
时提示如下错误:
Server: Msg 15402, Level 11, State 1, Procedure sp_addsrvrolemember, Line 23
'bulkadmin' is not a fixed server role.
不只什么原因,请高手指教。

解决方案 »

  1.   

    可能是因为bulkadmin没有相应的角色或数据库操作权限。
      

  2.   

    我用的sql server7.0的查询分析器执行,sa登录连接,全部代码贴出大家帮忙看看:
    /****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    if not exists (select * from master.dbo.syslogins where loginname = N'sysadmin')
    BEGIN
    declare @logindb nvarchar(132), @loginlang nvarchar(132) select @logindb = N'Lower', @loginlang = N'简体中文'
    if @logindb is null or not exists (select * from master.dbo.sysdatabases where name = @logindb)
    select @logindb = N'master'
    if @loginlang is null or (not exists (select * from master.dbo.syslanguages where name = @loginlang) and @loginlang <> N'us_english')
    select @loginlang = @@language
    exec sp_addlogin N'sysadmin', null, @logindb, @loginlang
    END
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', sysadmin
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', securityadmin
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', serveradmin
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', setupadmin
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', processadmin
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', diskadmin
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', dbcreator
    GO/****** Object:  Login sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addsrvrolemember N'sysadmin', bulkadmin
    GO/****** Object:  User dbo    Script Date: 02-09-17 02:44:10 ******/
    /****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    if not exists (select * from dbo.sysusers where name = N'sysadmin' and uid < 16382)
    EXEC sp_grantdbaccess N'sysadmin', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_accessadmin', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_backupoperator', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_datareader', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_datawriter', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_ddladmin', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_denydatareader', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_denydatawriter', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_owner', N'sysadmin'
    GO/****** Object:  User sysadmin    Script Date: 02-09-17 02:44:10 ******/
    exec sp_addrolemember N'db_securityadmin', N'sysadmin'
    GO