ホームページ >データベース >mysql チュートリアル >OPENROWSET クエリで変数を使用するにはどうすればよいですか?
OPENROWSET クエリでの変数の使用
OPENROWSET クエリで式を使用しようとすると、「次の構文が正しくありません」のようなエラーが発生することがよくあります。 ' '" これは、OPENROWSET が次の式の使用をサポートしていないためです。パラメータを指定しています。
この問題を解決するには、動的 SQL を使用して、パラメータ値が埋め込まれた OPENROWSET クエリ文字列を作成します。たとえば、次のコードは、動的 SQL を使用して @ID という名前の整数パラメータを OPENROWSET クエリのストアド プロシージャ sProc1 に渡す方法を示しています。
DECLARE @ID int DECLARE @sql nvarchar(max) SET @ID = 1 SET @sql = 'SELECT * FROM OPENROWSET( ''SQLNCLI'', ''DRIVER={SQL Server};'', ''EXEC dbo.sProc1 @ID = ' + CAST(@ID AS VARCHAR(10)) + ''')' -- Print @sql PRINT @sql -- Execute dynamic SQL EXEC(@sql)
この例では、@ID 変数の値CAST 関数を使用して OPENROWSET クエリ文字列に動的に挿入され、整数値を VARCHAR(10) に変換します。結果として得られる動的 SQL ステートメントは、コンソールに出力されて実行されます。
以上がOPENROWSET クエリで変数を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。