新しく作成されたログイン名の最後に2文字のランダムな文字を追加しようとしています。だから、ハードコードされたログイン名が 'TestUser'であるとしましょう。私は 'TestUser'の末尾にランダムな文字と数字を追加できるように、 'TestUser13'または 'TestUserA5'にすることができます。 新しいログイン - SQL Serverにランダムな文字を追加
は、しかし、私は構文エラーを取得しています: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
誰も助けをいただければ幸いです。
Incorrect syntax near the keyword 'LEFT'.
以下は、構文エラーが実行した後に返される私のコードです。