① sql创建用户对象失败,该怎么解决
原因:
sql server中“登录”与“用户”的区别,“登录”用于用户身份验证,而数据库“用户”帐户用于数据库访问和权限验证。登录通过安全识别符 (SID) 与用户关联。将数据库恢复到其他服务器时,数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户。这种情况被称为存在“孤立用户”。 此时是不能通过新建登录或者是对同名登录授予对应数据库的“用户”权限来解决登录问题,因为SQL Server会报出“错误15023:当前数据库中已存在用户或角色”
解决:
为了解决这个问题,需要调用系统存储过程sp_change_users_login,具体用法如下:
Use Northwind
Go
sp_change_users_login 'update_one', 'test', 'test'
其中Northwind为存在孤立用户的数据库,update_one是存储过程的参数,表示只处理一个用户,前一个test是“用户”,后一个test是“登录”,以上这个SQL表示将服务器登录“test”与 Northwind 数据库用户“test”重新连接起来。这样就可以正常使用数据库了。
② 在sql server 中新添加的用户,登录失败。错误:18456
如果是本地数据库可以用windows验证
打开microsoft
sql
server
management
studio
express,右键点击服务器,选择properties,在弹出窗口中点击security切换到安全面板,将server
authentication服务器认证从windows
authentication
mode(windows用户认证模式)修改为sql
server
and
windows
authentication
mode(sql
server和windows认证模式),ok。
添加用户:
打开你的microsoft
sql
server
management
studio
express
先用sa连接你的数据库.
然后在管理器中点击security(安全性)--logins(用户)--右键--new
logins(新用户)
在弹出的窗口中输入用户名
然后勾选单选框为"sql
server
验证"
输入用户密码.
然后在窗口的右边选择server
roles(用户角色)
将public与sysadmin勾上.
点击ok,添加完成.
③ sql server用sql添加角色成员出错!
将MH_Happy用户添加到MyRole角色中应该这样写:
EXEC sp_addrolemember MyRole,MH_Happy
④ sql把数据库角色权限赋值是出错
角色管理:
--创建角色 r_test
EXEC sp_addrole 'r_test'
--授予 r_test 对 jobs
表的所有权限
GRANT ALL ON jobs TO r_test
--授予角色 r_test 对 titles 表的 SELECT
权限
GRANT SELECT ON titles TO r_test
--添加登录
l_test,设置密码为pwd,默认数据库为pubs
EXEC sp_addlogin
'l_test','pwd','pubs'
--为登录 l_test 在数据库 pubs 中添加安全账户 u_test
EXEC
sp_grantdbaccess 'l_test','u_test'
--添加 u_test 为角色 r_test 的成员
EXEC
sp_addrolemember 'r_test','u_test'
⑤ 在sql server 中新添加的用户,登录失败。错误:18456
如果是本地数据库可以用windows验证
打开microsoft
sql
server
management
studio
express,右键点击服务器,选择properties,在弹出窗口中点击security切换到安全面板,将server
authentication服务器认证从windows
authentication
mode(windows用户认证模式)修改为sql
server
and
windows
authentication
mode(sql
server和windows认证模式),ok。
添加用户:
打开你的microsoft
sql
server
management
studio
express
先用sa连接你的数据库.
然后在管理器中点击security(安全性)--logins(用户)--右键--new
logins(新用户)
在弹出的窗口中输入用户名
然后勾选单选框为"sql
server
验证"
输入用户密码.
然后在窗口的右边选择server
roles(用户角色)
将public与sysadmin勾上.
点击ok,添加完成.
⑥ SQL语句将登陆添加到服务器角色列表老是显示错误
数据库是2012么?
⑦ oracle SQL developer 视图创建角色的时候出现错误,怎么解决
看看这段:
当我们在CDB中使用传统方式创建用户会遇到错误
sys@LUOCS12C> create user luocs identified by oracle default tablespace luocs;
create user luocs identified by oracle default tablespace luocs
*
ERROR at line 1:
ORA-65096: invalid common user or role name
sys@LUOCS12C> !oerr ora 65096
65096, 00000, "invalid common user or role name"
// *Cause: An attempt was made to create a common user or role with a name
// that wass not valid for common users or roles. In addition to
// the usual rules for user and role names, common user and role
// names must start with C## or c## and consist only of ASCII
// characters.
// *Action: Specify a valid common user or role name.
//
根据错误提示了解,在CDB中用户得以C##开头,如下:
sys@LUOCS12C> create user c##luocs identified by oracle default tablespace luocs;
User created.
⑧ 为什么SQL数据库创建用户失败 有图 请懂的来帮帮忙
可能是你数据库里没有sp_addlogin,可以网络找下自己恢复或在其他地方复制一个过来。。。