嘗試將兩個隨機字符添加到新創建的登錄名的末尾。所以我們說硬編碼的登錄名是'TestUser'。我希望能夠在'TestUser'末尾添加隨機字母和數字,因此它可以是'TestUser13'或'TestUserA5'。將隨機字符添加到新登錄中 - SQL Server
但是我收到一個語法錯誤:
Incorrect syntax near the keyword 'LEFT'.
下面是我的代碼,其中執行後會被返回的語法錯誤:
DECLARE @NewPassword VARCHAR(100)
DECLARE @Sql NVARCHAR(500)
DECLARE @RandomChar NVARCHAR(50)
SET @RandomChar = N'SELECT LEFT(NEWID(), 2)'
EXEC sp_executesql @RandomChar
--Calls function to generate random password
EXEC @NewPassword = dbo.GenerateRndPassword
--Creates login with random password
SET @Sql = 'CREATE LOGIN TestUser' + @RandomChar + 'WITH PASSWORD = ''' + @NewPassword + ''', DEFAULT_DATABASE = [master], CHECK_EXPIRATION = OFF, CHECK_POLICY = OFF'
EXEC sp_executesql @Sql
--PRINT @Sql
SELECT 'TestUser' + @RandomChar AS Login
SELECT @NewPassword AS Password
任何人的幫助,將不勝感激。