2010-10-04 626 views
10

如何在SQL Server 2005上使用CREATE LOGIN语句?如何使用CREATE LOGIN sql语句?

我试图几乎一切:用逗号,没有他们,用绳子,没有他们,等

CREATE LOGIN @loginame WITH PASSWORD = 'pass', DEFAULT_DATABASE='dbname' DEFAULT_LANGUAGE='us_english', CHECK_POLICY= OFF; 

我总是得到如下错误:

Incorrect syntax near the keyword 'with'. If this statement is a common table expression or an xmlnamespaces clause, the previous statement must be terminated with a semicolon.

+2

我不认为'CREATE LOGIN'与变量一起工作。您必须使用固定值或动态SQL。 – Tomalak 2010-10-04 11:43:43

回答

8

的最佳方法是使用上面的语句,但作为一个字符串,然后evaluete/EXE此字符串作为一个命令。

4

不要ü想这个创建登录是动态的?因为你说@loginname?

我想这个代码和它的作品对我..

CREATE LOGIN test WITH PASSWORD = 'pass', DEFAULT_DATABASE = [enter database here] , DEFAULT_LANGUAGE = us_english, CHECK_POLICY= OFF; 
5

如果你在SSMS运行此,你可以使用SQLCMD Mode(查询菜单下找到)脚本变量为你的登录名。

:setvar LoginName "YourLoginName" 

CREATE LOGIN $(LoginName) WITH PASSWORD = 'pass', DEFAULT_DATABASE='dbname' DEFAULT_LANGUAGE='us_english', CHECK_POLICY= OFF;