マシン名と任意の名前を連結してデータベースを作成するクエリを作成する必要があります。次のSQLクエリがありますが、エラーが発生します。私に提案してください。
DECLARE @machinename VARCHAR(100)
SET @machinename=HOST_NAME()
CREATE DATABASE @machinename+' Test'
マシン名と任意の名前を連結してデータベースを作成するクエリを作成する必要があります。次のSQLクエリがありますが、エラーが発生します。私に提案してください。
DECLARE @machinename VARCHAR(100)
SET @machinename=HOST_NAME()
CREATE DATABASE @machinename+' Test'
なぜこれを実行したいかはわかりませんが、動的SQLが必要になります(最初に、このリンクにアクセスしてください)。そうは言っても、次のことができます。
DECLARE @machinename VARCHAR(100), @SQL VARCHAR(8000)
SET @machinename=HOST_NAME()
SET @SQL = 'CREATE DATABASE ' + QUOTENAME(@machinename + ' Test')
EXEC(@SQL)
動的SQLを使用する必要があり、その' Test'
部分のスペースを削除する必要があります。
DECLARE @machinename VARCHAR(100)
declare @sql varchar(max)
SET @machinename=HOST_NAME()
set @sql = 'CREATE DATABASE ' + QUOTENAME(@machinename + '_Test')
execute(@sql)
埋め込みスペースや特殊文字は使用できません。