为SQL Server 2008创建用户?

Mic*_*res 11 sql-server-2008

我正在使用此代码来创建新用户.

/****** Object:  User [primebox] ******/
IF NOT EXISTS (SELECT * FROM sys.database_principals WHERE name = N'primebox')
CREATE USER [primebox] FOR LOGIN [primebox] WITH DEFAULT_SCHEMA=[primebox]
GO
Run Code Online (Sandbox Code Playgroud)

当我尝试创建此特定用户时出现以下错误.

消息15007,级别16,状态1,行
1'primebox'不是有效登录或您没有权限.

我不理解的部分是,我可以创建其他用户,但这个特别看起来无效

我试图重命名我的数据库并得到此错误

无法重命名primebox.(ObjectExplorer)

数据库'primebox'重命名失败.(Microsoft.SqlServer.Smo)

执行Transact-SQL语句或批处理时发生异常.(Microsoft.SqlServer.ConnectionInfo)

无法独占锁定数据库以执行操作.(Microsoft SQL Server,错误:5030)

我的猜测是问题是数据库名称......但是我从另一个数据库(我正在创建一个'想成为'备份)中获取具有相同用户和数据库名称的代码.所以我在这里的一个角落...任何帮助将是一个很多赞赏=)

PS:我的计算机名是box,windows 7.使用SQL Server 2008

Eri*_*ski 26

登录与用户不同,这里是如何创建新的LOGIN.

  1. 右键单击SQL Server Management Studio,然后选择 - >以管理员身份运行.

  2. 使用默认的Windows身份验证正常登录.

  3. 选择数据库 - >系统数据库 - >主数据库.单击左上角的"新建查询"按钮.

  4. 将此查询粘贴到那里.(有关SQL登录选项的详细信息,请参阅此处):

    CREATE LOGIN youruser WITH PASSWORD = 'yourpassword'
    
    Run Code Online (Sandbox Code Playgroud)
  5. 你应该得到这个回应:

    Command(s) completed successfully.
    
    Run Code Online (Sandbox Code Playgroud)
  6. 检查以确保它已添加到 dbo.syslogins

    select * from master.dbo.syslogins
    
    Run Code Online (Sandbox Code Playgroud)
  7. 通过转到"SQL Server配置"面板并单击"重新启动",关闭并重新启动SQL Management Server(以管理员身份)并重新启动SQL Server.

  8. 在对象资源管理器中,单击主EL-PC\SQLEXPRESS - >安全性 - >登录.

  9. 您新创建的登录名应该在那里,右键单击并转到属性,您必须授予该用户访问默认数据库的权限,并设置默认数据库.

  10. 关闭SQL Server并使用SQL Server身份验证选项和用户名/密码再次登录.您现在应该使用新用户登录.

如何创建新用户

  1. 以管理员身份启动SQL Server Management Studio.
  2. 展开要创建新数据库用户的数据库.
  3. 右键单击"安全"文件夹选择"新用户",如果该选项不可用,则可能单击服务器的安全文件夹.
  4. 添加名称和配置,然后单击"确定".


pod*_*ska 10

在SQL Server中,用户与登录不同.

要为数据库创建用户,首先必须使用create login语法为服务器创建登录