IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = N'bookmanage')
DROP DATABASE [bookmanage]
GOCREATE DATABASE [bookmanage]  ON (NAME = N'bookmanage_Data', FILENAME = N'D:\Program Files\Microsoft SQL Server\MSSQL\data\bookmanage_Data.MDF' , SIZE = 1, FILEGROWTH = 10%) LOG ON (NAME = N'bookmanage_Log', FILENAME = N'D:\Program Files\Microsoft SQL Server\MSSQL\data\bookmanage_Log.LDF' , SIZE = 1, FILEGROWTH = 10%)
 COLLATE Chinese_PRC_CI_AS
GOexec sp_dboption N'bookmanage', N'autoclose', N'false'
GOexec sp_dboption N'bookmanage', N'bulkcopy', N'false'
GOexec sp_dboption N'bookmanage', N'trunc. log', N'false'
GOexec sp_dboption N'bookmanage', N'torn page detection', N'true'
GOexec sp_dboption N'bookmanage', N'read only', N'false'
GOexec sp_dboption N'bookmanage', N'dbo use', N'false'
GOexec sp_dboption N'bookmanage', N'single', N'false'
GOexec sp_dboption N'bookmanage', N'autoshrink', N'false'
GOexec sp_dboption N'bookmanage', N'ANSI null default', N'false'
GOexec sp_dboption N'bookmanage', N'recursive triggers', N'false'
GOexec sp_dboption N'bookmanage', N'ANSI nulls', N'false'
GOexec sp_dboption N'bookmanage', N'concat null yields null', N'false'
GOexec sp_dboption N'bookmanage', N'cursor close on commit', N'false'
GOexec sp_dboption N'bookmanage', N'default to local cursor', N'false'
GOexec sp_dboption N'bookmanage', N'quoted identifier', N'false'
GOexec sp_dboption N'bookmanage', N'ANSI warnings', N'false'
GOexec sp_dboption N'bookmanage', N'auto create statistics', N'true'
GOexec sp_dboption N'bookmanage', N'auto update statistics', N'true'
GOuse [bookmanage]
GOif not exists (select * from master.dbo.syslogins where loginname = N'ECHO\Administrator')
exec sp_grantlogin N'ECHO\Administrator'
exec sp_defaultdb N'ECHO\Administrator', N'master'
exec sp_defaultlanguage N'ECHO\Administrator', N'简体中文'
GOexec sp_addsrvrolemember N'ECHO\Administrator', sysadmin
GO以上语句查询分析器里出现错误,请帮忙改下!

解决方案 »

  1.   

    去查系统的存储过程吧 exec sp_dboption N'bookmanage', N'auto create statistics', N'true'
    GO---自动创建统计信息exec sp_dboption N'bookmanage', N'auto update statistics', N'true'
    GO--自动更新统计信息其他的不写了
      

  2.   

    什么错误?是不是没有D:\Program Files\Microsoft SQL Server\MSSQL\data\目录
      

  3.   


    服务器: 消息 3702,级别 16,状态 3,行 2
    无法除去 数据库 'bookmanage',因为它当前正在使用。
    服务器: 消息 1801,级别 16,状态 3,行 2
    数据库 'bookmanage' 已存在。
    服务器: 消息 15401,级别 11,状态 1,过程 sp_grantlogin,行 41
    没有找到 Windows NT 用户或组 'ECHO\Administrator'。请再次检查该名称。
    服务器: 消息 15007,级别 16,状态 1,过程 sp_defaultdb,行 44
    登录 'ECHO\Administrator' 不存在。
    服务器: 消息 15007,级别 16,状态 1,过程 sp_defaultlanguage,行 53
    登录 'ECHO\Administrator' 不存在。
    服务器: 消息 15007,级别 16,状态 1,过程 sp_addsrvrolemember,行 58
    登录 'ECHO\Administrator' 不存在。
      

  4.   


    ECHO\Administrator 这个是不是本地服务器名称 要改一下? \把这个前面的ECHO改掉?
      

  5.   

    sp_dboption 显示或更改数据库选项。这些东西是在显示或更改数据库的某些选项(性能).
    你也可以不用.
      

  6.   

    N'你好abc'
    表示它后面的字符串是一个双字节的字符串.nvarchar
      

  7.   

    楼主你好,以上的写法有些麻烦,他具体到了在什么库什么文件下了,我一般平时会这么写
    IF EXISTS(SELECT * FROM SYSDATABASES WHERE NAME = '库名') 
        DROP DATABASE 库名
    GO
    -- IF EXISTS 的意思是 是否存在
    -- (SELECT * FROM SYSDATABASES WHERE NAME = '库名') 是查询在所有的库中是否有'库名'的数据库
    -- DROP DATABASE '库名' 是删除该库
    -- 连起来就是 判断是否存在 库名 为'库名'的数据库 如果存在删除,如果不存在将不会执行DROP语句
    CREATE DATABASE '库名'
       ON -- 创建主数据库
       (
              NAME = '主数据库文件名',
              FILENAME = '主数据库的要存放的位置以及数据库的后缀名',
              SIZE = '数据库初始化大小',
              FILEGROWTH = '如数据库满按百分之多少增加数据库空间'
       )
      LOG ON -- 创建主数据库的LOG日志文件
        (
              NAME = 'LOG文件名',
              FILENAME = 'LOG要存放的位置以及LOG的后缀名',
              SIZE = 'LOG初始化大小',
              FILEGROWTH = '如LOG满按百分之多少增加LOG空间'
       )
    GO
    -- EXEC
    EXEC 是执行的意思,一般用在较多是执行已有命令的操作,例执行存储过程,执行内置函数 等等
      

  8.   

    什么叫双字节的字符串。跟char VCHAR有什么不同?能举个例子吗?
      

  9.   

    exec sp_dboption N'bookmanage', N'torn page detection', N'true'
    --执行 反转页检测  现在都用 checksum