0

ここで、スクリプトに従ってデータベースを構築するスクリプトを実行するために実行しようとしているクエリを次に示します。

USE master
GO
if exists (select * from sysdatabases where name='Northwind')
        drop database Northwind
go

DECLARE @device_directory NVARCHAR(520)
SELECT @device_directory = SUBSTRING(filename, 1, CHARINDEX(N'master.mdf', LOWER(filename)) - 1)
FROM master.dbo.sysaltfiles WHERE dbid = 1 AND fileid = 1

EXECUTE (N'CREATE DATABASE Northwind
  ON PRIMARY (NAME = N''Northwind'', FILENAME = N''' + @device_directory + N'northwnd.mdf'')
   LOG ON (NAME = N''Northwind_log'',  FILENAME = N''' + @device_directory + N'northwnd.ldf'')')
go

exec sp_dboption 'Northwind','trunc. log on chkpt.','true'
exec sp_dboption 'Northwind','select into/bulkcopy','true'
GO

今ここにエラーが発生しています...

Msg 262, Level 14, State 1, Line 1
CREATE DATABASE permission denied in database 'master'.
Msg 15010, Level 16, State 1, Procedure sp_dboption, Line 64
The database 'Northwind' does not exist. Supply a valid database name. To see available databases, use sys.databases. 

Msg 15010, Level 16, State 1, Procedure sp_dboption, Line 64
The database 'Northwind' does not exist. Supply a valid database name. To see available databases, use sys.databases. 

助けてください!データベースはマスターで作成する必要がありますが、そうではありません!

4

1 に答える 1

0

新しいデータベースを作成するには、CREATE DATABASE 権限が必要です。このトピックに慣れていない場合は、"sa" ユーザーとしてログインしてみるか (パスワードがわかっている場合)、管理者に SQL Server の "sysadmin" ロールにログインを追加するよう依頼してください。

于 2013-07-19T07:36:32.590 に答える