2013-07-12 2 views
5

に拒否されました:INSERT権限が、私は、SQL Server Management Studioのから次のスクリプトを実行しようとしていますオブジェクトのドライバー "

INSERT [Truck].[Driver] ([DriverId], [CorporationId], [DriverNumber], [Name], [PhoneNumber]) 
VALUES (N'b78f90a6-ed6d-4f0e-9f35-1f3e9c516ca9', N'0a48eeeb-37f6-44de-aff5-fe9107d821f5', N'12', N'Unknown', NULL) 

そして、私はこのエラーを取得しています:

Msg 229, Level 14, State 5, Line 1
The INSERT permission was denied on the object 'Driver', database 'SuburbanPortal2', schema 'Truck'.

手動でこれを編集モードで追加することができます。エラーは発生しません。私は自分のユーザーのために設定することができるすべての権限を持っています。これは、ローカルユーザーとしてログインしているローカルデータベースで、一部のデータをテストしているので、セキュリティについてはあまり気にしません。

しかし、ここで私のユーザーのためのデータベースの設定は、次のとおりです。

enter image description here

enter image description here

enter image description here

任意の提案は?

+0

ConnectionStringを提供できますか?また、何が起こったのかSQLプロファイラを試してみてください。 –

+1

あなたは '[dbo]'スキーマのすべての権限を持っているようです.....しかしあなたのテーブルは '[Truck]'スキーマにあります。あなたはそのスキーマの権限も持っていますか? –

+0

愚かな質問ですが、それはINSERT INTO [Truck]ではありません。[Driver] – Andrew

答えて

4
-- Use master 
USE msdb; 
go 

-- Make database 
CREATE DATABASE SuburbanPortal2; 
go 

-- Use the database 
USE SuburbanPortal2; 
GO 

-- Make schema 
CREATE SCHEMA Truck AUTHORIZATION dbo; 
go 

-- Make table 
CREATE TABLE Truck.Driver 
(
    [DriverId] uniqueidentifier, 
    [CorporationId] uniqueidentifier, 
    [DriverNumber] varchar(64), 
    [Name] varchar(128), 
    [PhoneNumber] varchar(12) 
); 

-- Add data 
INSERT [Truck].[Driver] ([DriverId], [CorporationId], [DriverNumber], [Name], [PhoneNumber]) 
VALUES (N'b78f90a6-ed6d-4f0e-9f35-1f3e9c516ca9', N'0a48eeeb-37f6-44de-aff5-fe9107d821f5', N'12', N'Unknown', NULL); 
GO 

このコードは、あなたのようなサンプルデータベースを設定します。私は挿入に問題はありません。

スキーマの所有者は誰ですか?

使用すると、1つのデータベース・グループと別のテーブルを非表示にしたい場合は、データベース・グループにユーザーを追加します。

データベースグループをスキーマの所有者にします。右クリックして、私は、スキーマの所有者を示し、>トラック - 私は

データベースにドリルダウンすることができます...あなたは、スキーマの所有権の問題を持つかもしれないと思う - >セキュリティ - >スキーマ。画像を投稿してください。

また、db_ownerのを除いて、ユーザーからのすべてのデータベース権限を削除します。

関連する問題