Tsql 对对象';的插入权限被拒绝;驱动程序&x27;
我正在尝试从SQL Server Management Studio运行以下脚本: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)
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”是可选的。那么你每天都会学到新东西:)