Tsql 对对象';的插入权限被拒绝;驱动程序&x27;

Tsql 对对象';的插入权限被拒绝;驱动程序&x27;,tsql,sql-server-express,sql-server-2008,Tsql,Sql Server Express,Sql Server 2008,我正在尝试从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)

我正在尝试从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第14级第5状态第1行
对对象“Driver”、数据库“SuburbanPortal2”、架构“Truck”的插入权限被拒绝

我可以在编辑模式下手动添加,并且没有错误。我拥有为我的用户设置的所有权限。这是一个以本地用户身份登录的本地数据库,我正在测试其中的一些数据,这样我就不必担心安全性了

但是,以下是我的用户的数据库设置:

有什么建议吗

-- 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
这段代码设置了一个示例数据库。我对插入没有问题

谁是架构的所有者

如果要从一个数据库组和另一个数据库组隐藏表,请将用户添加到该数据库组

使数据库组成为架构的所有者。我认为您可能有架构所有权问题

您可以深入数据库->安全->模式->卡车,右键单击并显示模式的所有者。请张贴图片


另外,从用户中删除除db_owner之外的所有数据库权限。

您能提供连接字符串吗?另外,请尝试使用SQL Profiler查看发生了什么。您似乎拥有所有权限。。。。。在
[dbo]
模式上。但是您的表位于
[Truck]
模式中;你对这个模式也有权限吗?愚蠢的问题,但它不应该被插入到[Truck].[Driver]@Andrew,“INTO”是可选的。那么你每天都会学到新东西:)