問題タブ [openquery]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
78367 参照

sql - OPENQUERY でストアド プロシージャを実行する

リンクされた Sybase サーバーを備えた SQL Server 2008 があり、OPENQUERY を使用して Sybase サーバーでストアド プロシージャを実行しようとしています。パラメータを取らないストアド プロシージャがある場合、問題なく成功します。パラメータを持つストアド プロシージャがある場合、失敗します。int のみを取る非常に基本的なストアド プロシージャを試してみましたが、それでも失敗しました。以下は私が使用している構文です:

メッセージ 7357、レベル 16、状態 2、行 3 オブジェクト "exec database.user.my_stored_proc 'AT','XXXX%','1111',1" を処理できません。リンク サーバー "LINKSERVER" の OLE DB プロバイダー "ASEOLEDB" は、オブジェクトに列がないか、現在のユーザーがそのオブジェクトに対するアクセス許可を持っていないことを示しています。

proc はパラメーターなしで問題なく実行されるため、パーミッションの問題ではないと思います。

0 投票する
4 に答える
4074 参照

asp.net - リンクサーバーに接続するときにクエリが遅い

私はこのクエリを持っています

UPDATE linkeddb...table SET field1 = 'Y' WHERE column1 = '1234'

これは、1つの行を選択して更新するのに23秒かかります

しかし、openqueryを使用する場合(これは使用したくありません)、0.5秒しかかかりません。

openqueryを使用したくない理由は、クエリにパラメータを安全に追加し、SQLインジェクションから安全にできるようにするためです。

実行速度が非常に遅い理由を知っている人はいますか?

0 投票する
1 に答える
1198 参照

sql-server-2008 - SQL:OPENQUERYの質問

現在、OPENQUERYを使用して、OracleLinkedServerからデータベースにデータをインポートしています。

現在、SELECTINTOを使用しています。それはうまく機能しますが、データをインポートする必要があるたびにデータベースを削除して再作成する必要があります。そうしないと、エラーが発生します:テーブルは既に存在します。

必要なテーブルを削除して再作成することなくデータをインポートするOPENQUERYを使用する別の方法はありますか?

これが私が持っているものです:

SELECT * INTO TEMPTBL FROM OPENQUERY(LINK、'SELECT * FROM DATALOAD')

ありがとう。

0 投票する
1 に答える
2366 参照

sql-server-2005 - 「動的」OpenQueryを実行するためのSQLSP_EXECSQL@VAR

OpenQueryがあります(SQL2005でレガシーデータベースに対してクエリを実行するために使用されます)。過去6か月のデータを返すように、実行する文字列を作成しています。

私が抱えている問題は「||」にあります 連結する。

これはレガシーシステムで機能します。

これは、リンクされたSQLServerを介してSQL2005で機能します。

これは動作しません:

これもしません:

単純なものが欠けていることはわかっています...しかし|| 文字列を連結することは、レガシーシステム自体では機能しますが、混乱を招きます。

0 投票する
1 に答える
1121 参照

mysql - MySQL の SQL サーバーの openquery のような同等のオプション

MySQLのSQLサーバーで使用される「OpenQuery」のような同様の種類のオプションはありますか?

実際には、MYSQL コマンドを使用して、別のサーバーにあるデータベースを操作する必要があります。

オプションがあれば教えてください。

前もって感謝します

0 投票する
1 に答える
690 参照

sql - ローカルキューブ内でmdxを実行し、ローカルキューブでSQLクエリを実行する

ローカル キューブから一連の ID を取得して動的セキュリティからピギーバックしようとしていますが、これを行う方法がわかりません。openquery を試してみましたが、試してみると、あまり役に立たないエラーが発生します

リンク サーバー "coop3-t3500" の OLE DB プロバイダー "SQLNCLI10" から、"構文エラー、アクセス許可違反、またはその他の非特定エラー" というメッセージが返されました。

メッセージ 7321、レベル 16、状態 2、行 2

クエリの準備中にエラーが発生しました

実行しようとしているクエリは次のようなものです。

私が間違っていること、またはこれを行うためのより良い方法はありますか?

0 投票する
1 に答える
6592 参照

mysql - SQLServerでのOpenQueryのパフォーマンスをMySQLリンクサーバーに挿入するのが非常に遅い

SQL Server Management Studioを使用して、テーブルの内容全体をSQLServerからMySQLマシン上の同一のテーブルにコピーします。MySQLデータベースは、MySQLODBC5.1ドライバーを使用してリンクサーバーとしてManagementStudioに接続されています。単純なステートメントの使用は問題なく機能しますが、実行速度は非常に遅くなります。

約450,000レコードのテーブルがあり、転送には5時間強かかります。これは正常ですか?MySQLサーバーをリンクした経験がありません。

0 投票する
2 に答える
537 参照

sql-server - SQL Server ストアド プロシージャの結果から選択

あるサーバーから別のサーバーに数百のストアド プロシージャを移行しているので、各サーバーで SP を実行し、出力の違いを比較するストアド プロシージャを作成したいと考えました。

これを行うには、通常、次の構文を使用して結果をテーブルに取得します。

次に、それらを結合してカウントを行い、結果が異なる行数を取得します。

ただし、この場合、ストアド プロシージャには が含まれているOpenQueryため、 を に入れようとするexecOpenQuery、クエリは次のエラーで失敗します。

これに対する良い回避策はありますか?または、このプロセスをより迅速に進めるために私ができることについて、何か賢いアイデアを持っている人はいますか? 現時点では、各サーバーで SP を実行し、結果を tmp テーブルにスクリプト化し、比較する必要があるようです。それは悪い解決策のようです!

これを読んでいただきありがとうございます。どんな助けでも大歓迎です!

0 投票する
1 に答える
1940 参照

mysql - MSSQLからMySQLへの動的SQLクエリ

私は2つのデータベースを持っています。1つはMSSQLに、もう1つはMysqlにあります。MysqlからデータをフェッチしてMSSQLに挿入するSQLスクリオットをいくつか作成しました。これを行うために、MS SQLでデバイスドライバー接続とリンクサーバーを設定しました。これらのスクリプトは、MSSQLで実行されます。スクリプトは単純で、selectステートメントのみがあります。次に、いくつかのパラメーターに基づいてmysqlからデータをフェッチする動的スクリプトを作成する必要があります。以下は、DB「stagedb_ie」からデータを取得するためのサンプルクエリです。ここで、ieはアイルランドを表します。

select * from openquery(stagedb_ie, 'select * from stagedb_ie.aol_center')

mysqlには、名前としてstagedbに国コードサフィックスが付いた他のdbがあります。次に、この国コードをパラメーターとして渡して、データを照会および取得します。例えば

しかし、このクエリは機能しません。なにか提案を?

0 投票する
1 に答える
2743 参照

sql-server - OpenQuery でパラメーター化されたストアド プロシージャを呼び出す - SQL Server 2008

ストアド プロシージャを呼び出して、OpenQueryパラメータをストアド プロシージャに渡しています。

しかし、これは次のエラーで失敗します

メッセージ 7357、レベル 16、状態 2、行 1
オブジェクトを処理できません "exec [Tfs_VMT Collection].dbo.MergeCandidate '$\VMT\Versions\0900\AMS\' , '$\VMT\Versions\0900\Base\' "。リンク サーバー "ODSSERVER" の OLE DB プロバイダー "SQLNCLI10" は、オブジェクトに列がないか、現在のユーザーがそのオブジェクトに対するアクセス許可を持っていないことを示しています。

これは権限とは関係がないことを確認しました。

助けていただけますか?