ホームページ >データベース >mysql チュートリアル >OPENROWSET クエリで変数を使用するにはどうすればよいですか?

OPENROWSET クエリで変数を使用するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-05 13:22:43620ブラウズ

How to Use Variables in OPENROWSET Queries?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。