assgin 내가 변수 이름사용자 동적 이름을 만들고 역할
예를 동적 이름을 가진 사용자를 생성해야합니다
이다음 코드에 구문 오류가 있습니다.
Create Login @User_name WITH PASSWORD @password;
USE database;
와 내가 만든 사용자에 대한 역할을 할당해야 ..
assgin 내가 변수 이름사용자 동적 이름을 만들고 역할
예를 동적 이름을 가진 사용자를 생성해야합니다
이다음 코드에 구문 오류가 있습니다.
Create Login @User_name WITH PASSWORD @password;
USE database;
와 내가 만든 사용자에 대한 역할을 할당해야 ..
개체 이름에 변수를 사용할 수 없습니다. 당신은
exec sp_addlogin @User_name, @password;
속임수 어느 쪽이든 또는 동적 SQL을 구성하지만, SQL 주입을 방지하기 위해 QUOTENAME를 사용해야 할 수 있습니다.
SQL Server 2005 이후로이 Stored Proc는 더 이상 사용되지 않습니다. CREATE LOGIN으로 동적 SQL을 사용하는 것이 좋습니다. – MaxiWheat
당신은 변수 로그인을 생성 할 수 없습니다. 문을 동적으로 생성하거나 sp_addlogin을 사용할 수 있습니다. http://msdn.microsoft.com/en-us/library/ms173768.aspx에 따르면 sp_addlogin은 더 이상 사용되지 않습니다.
declare @UN sysname
declare @PW sysname
declare @S nvarchar(100)
set @UN = 'UserName'
set @PW = 'Password'
set @S = 'CREATE LOGIN ' + quotename(@UN) + ' WITH PASSWORD = ' + quotename(@PW, '''')
exec (@S)
여기에 설명되어 있습니다. http://stackoverflow.com/questions/837358/sql-create-logon-cant-use-parameter-as-username –
위의 주석에있는 링크가있는 그대로 작동하지 않습니다. 업데이트 된 답변이 추가되었습니다. –