ホームページ >データベース >mysql チュートリアル >SQL Server の OPENQUERY でパラメータを使用するにはどうすればよいですか?
OPENQUERY でのパラメーターの使用
OPENQUERY は、リンク サーバー データにアクセスするための強力なツールですが、クエリにパラメーターを組み込むのは困難な場合があります。ドキュメントには、OPENQUERY がパラメーターとして変数を受け入れないことが明確に記載されています。
解決策:
この制限を克服するには、いくつかの回避策が利用可能です:
<code class="language-sql">DECLARE @TSQL varchar(8000), @VAR char(2) SELECT @VAR = 'CA' SELECT @TSQL = 'SELECT * FROM OPENQUERY(MyLinkedServer,''SELECT * FROM pubs.dbo.authors WHERE state = ''''' + @VAR + ''''''')' EXEC (@TSQL)</code>
<code class="language-sql">DECLARE @OPENQUERY nvarchar(4000), @TSQL nvarchar(4000), @LinkedServer nvarchar(4000) SET @LinkedServer = 'MyLinkedServer' SET @OPENQUERY = 'SELECT * FROM OPENQUERY('+ @LinkedServer + ',''' SET @TSQL = 'SELECT au_lname, au_id FROM pubs..authors'')' EXEC (@OPENQUERY+@TSQL)</code>
<code class="language-sql">DECLARE @VAR char(2) SELECT @VAR = 'CA' EXEC MyLinkedServer.master.dbo.sp_executesql N'SELECT * FROM pubs.dbo.authors WHERE state = @state', N'@state char(2)', @VAR</code>
以上がSQL Server の OPENQUERY でパラメータを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。