c# - 在 sql server 中创建用户、登录并授予权限

标签 c# sql sql-server sql-server-2005 tsql

我创建了一个登录名:bob

我授予他创建数据库的权限:sp_addsrvrolemember 'dbcreator'

这会自动在登录名 bob 下创建一个用户,并且名称与登录名相同。

Login - bob
user- bob

用户是在master数据库中创建的吗?

我执行了这个查询:select * from sysusers,但我在表中找不到任何名为 'bob' 的用户。为什么会这样?

'bob' 有创建数据库的权限。

现在我想授予他创建表的权限。那我该怎么做呢? 当我使用 grant 执行此操作时,它说找不到用户“bob”?为什么这样?

grant create table to bob

之后,我使用登录名“bob”连接了 sql server 然后,我创建了一个数据库:bobdb 我进入了bobdb。 现在,如何在bobdb中给bob建表权限

我需要添加新用户吗?

最佳答案

登录在服务器级别 - 您在服务器上有一个登录。

用户处于数据库级别 - 您可以在每个单独的数据库中为单个登录定义不同的用户。

当您运行 create user .... 语句时,用户是在当前事件的数据库中创建的...

因此,如果您在运行该查询时位于 SSMS 的 master 数据库中 - 是的,那么该用户是在 master 数据库中创建的,并且不存在于任何地方否则……

关于c# - 在 sql server 中创建用户、登录并授予权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5139869/

相关文章:

sql - 在 MySQL 中按月和年分组

sql - SQL递归部分和

php - SQL中同时实现一对一和一对多查询

mysql - SQL,自身连接表,按一定时间跨度内创建的顺序

SQL 选择除

C#,容器的火灾事件

java - .NET 与 Java 中的异常处理

C# 强制运算符?

c# - 如何向 ILIST 添加指定数量的列表元素?

c# - 向 UI 公开数据库 ID