如何在sqlserver建立新用户并关联相应的数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在sqlserver建立新用户并关联相应的数据库相关的知识,希望对你有一定的参考价值。

--SQLServer:一、操作步骤首先进入数据库级别的【安全性】-【登录名】-【新建登录名】(图1:新建登录名)2.在【常规】选项卡中,如下图所示,创建登陆名,并设置默认的数据库。(图2:设置选项)3.在【用户映射】选项卡中,如下图所示,勾选需要设置的数据库,并设置【架构】,点击【确认】按钮,完成创建用户的操作(图3:选择对应数据库)4.现在我们就可以对TestLog数据库中的User表进行权限的设置了,【表】-【属性】(图4:选择对应表)5.在【权限】选项卡中,如下图所示,依此点击【添加】-【浏览】-【选择对象】(图5:设置访问表的用户)6.在上面点击【确认】后,我们就可以下面的列表中找到对应的权限,如果你还想细化到列的权限的话,右下角还有一个【列权限】的按钮可以进行设置,点击【确认】按钮就完成了这些权限的设置了(图6:权限列表)7.现在就使用TestUser用户登陆数据库了,登陆后如下图所示,现在只能看到一个表了(图7:效果)二、注意事项在上面的第3步骤中需要注意:如果这里没有选择对应的数据库的话,之后去TestLog数据库中是找不到TestUser。(图8:找不到TestUser用户)2.在上面的第3步骤,设置完TestLog数据后,需要点击【确认】按钮,完成创建用户操作,如果这个时候去设置【安全对象】,是无法在【添加】-【特定对象】-【对象类型】-【登陆名】-【浏览】中找到刚刚新建的TestUser用户的。3.其实在数据库级别的【安全性】创建的用户是属于全局的,当设置了某个数据库,比如TestLog之后,这个用户就会出现在这个数据库的【安全性】列表中。如果删除TestLog这个用户,会出现下面的提示。删除了后,这个用户就无法登陆了。需要去对应的数据库中删除用户,如果没有删除又创建,是会报错的。(图9:删除TestUser用户)4.在第6步的【显式权限】列表中,如果选择了【Control】这个选项,那么在【Select】中设置查询【列权限】就没有意义了,查询就不会受限制了。如果设置【列权限】,在正常情况下会显示下图的报错信息:(图10:效果)5.在TestLog数据库的【安全性】-【TestUser】-【属性】-【安全对象】-【添加】-【对象类型】这里有关于数据库级别的一些对象类型可以设置。(图11:其它对象类型) 参考技术A 1. 首先在 SQL Server 服务器级别,创建登陆帐户(create login)
--创建登陆帐户(create login)
create login dba with password='abcd1234@', default_database=mydb
登陆帐户名为:“dba”,登陆密码:abcd1234@”,默认连接到的数据库:“mydb”。 这时候,dba 帐户就可以连接到 SQL Server 服务器上了。但是此时还不能 访问数据库中的对象(严格的说,此时 dba 帐户默认是 guest 数据库用户身份, 可以访问 guest 能够访问的数据库对象)。

要使 dba 帐户能够在 mydb 数据库中访问自己需要的对象, 需要在数据库 mydb 中建立一个“数据库用户”,赋予这个“数据库用户” 某些访问权限,并且把登陆帐户“dba” 和这个“数据库用户” 映射起来。 习惯上,“数据库用户” 的名字和 “登陆帐户”的名字相同,即:“dba”。 创建“数据库用户”和建立映射关系只需要一步即可完成:

2. 创建数据库用户(create user):
--为登陆账户创建数据库用户(create user),在mydb数据库中的security中的user下可以找到新创建的dba
create user dba for login dba with default_schema=dbo
并指定数据库用户“dba” 的默认 schema 是“dbo”。这意味着 用户“dba” 在执行“select * from t”,实际上执行的是 “select * from dbo.t”。

3. 通过加入数据库角色,赋予数据库用户“dba”权限:
--通过加入数据库角色,赋予数据库用户“db_owner”权限
exec sp_addrolemember 'db_owner', 'dba'
此时,dba 就可以全权管理数据库 mydb 中的对象了。本回答被提问者采纳
参考技术B  方法/步骤
  如果没有开通sqlserver身份验证,首先windowns身份进入管理系统开通

  属性-右键-安全性-开通即可

  然后需要重新启动(在右键总结点里面)

  接着在安全性-登入名-添加新登入名

  输入用户名,密码;密码最好启用强制实施密码策略

  然后再在你要开通用户权限的数据库里面找到安全性-右键-新建-用户

  将刚才用户名输入即可,然后勾选用户架构和角色;这里就勾选db-owner(拥有完全权限)

  最后用该账户链接

  如果去点击其他数据库,将会提示你没有权限

离线使用数据库,然后在与 iPhone 建立新连接时更新

【中文标题】离线使用数据库,然后在与 iPhone 建立新连接时更新【英文标题】:Using database offline, then updating when new connection established with iPhone 【发布时间】:2016-08-23 11:03:05 【问题描述】:

我被要求让我的应用程序离线可用,这意味着存储通过 Api 收集的数据以供在没有可用连接时使用。问题是当建立新连接时,我的本地数据可能已过时。此外,离线时所做的任何更改都需要更新服务器。

我知道一种同步数据库的方法,这样当建立新连接时,数据会自动更新双向。但是,在浏览了 Google 之后,我还没有找到明确的方法。

谁能帮我指出正确的方向?

【问题讨论】:

【参考方案1】:

应该有一个类似时间戳的字段来指示上次同步的时间。当连接在线时,请根据时间戳进行获取验证并更新离线存储中的数据。

同样的,当你在离线时有更新时,你可以设置一些布尔值来检查数据是否同步,并在你在线时同步。

【讨论】:

以上是关于如何在sqlserver建立新用户并关联相应的数据库的主要内容,如果未能解决你的问题,请参考以下文章

用友u8.52建年度账2012 报错说年度数据已存在 SQLserver发生内部一致性错误 SQLserverDATABASE操作异常

理解SVG坐标系统和变换: 建立新视窗

sqlserver 错误18456

建立新用户,将.dmp文件的数据导入到这个用户中

尝试放松并在节点之间建立新的关系Neo4J C#Client

怎么用c#代码在sql中建立新的数据库?