无法创建表,提示:指定的架构名称 "dbo" 不存在,或者您没有使用该名称的权限。解决方法

http://www.myexception.cn/sql-server/350455.html


无法创建表,提示:指定的架构名称 "dbo" 不存在,或者您没有使用该名称的权限。

请教各位大侠,情况是这样的,使用sa账户在数据库test里面为登录名user1创建一个用户U1,给U1赋予了以下权限:
grant create table,insert,update,delete to U1
但是在test数据库中创建一个表时提示:指定的架构名称 "dbo" 不存在,或者您没有使用该名称的权限。
检查:test数据库--安全性--用户--U1--右键属性--默认架构为“dbo”
请各位大侠指点下,为什么,谢了


------解决方案--------------------------------------------------------
test数据库--安全性--用户--U1--右键属性》》数据库角色成员身份呢 
------解决方案--------------------------------------------------------
指定你建立用户的默认构架为系统默认,就可以访问DBO 
------解决方案--------------------------------------------------------
USE master
GO

--–创建一个登录
Create LOGIN U1 WITH PASSWORD = 'xx'
GO

USE test
GO

--–创建一个数据库的用户
Create USER myUser FOR LOGIN U1
GO

--–授予db_owner权限
exec  sp_addrolemember  'db_owner','myUser'
GO

------解决方案--------------------------------------------------------
因为sa对应是dbo,所以你应该把创建的表名写全,把所有者加上去!
如create table [test].[u1].[tb]()

你可能感兴趣的:(无法创建表,提示:指定的架构名称 "dbo" 不存在,或者您没有使用该名称的权限。解决方法)