問題タブ [linked-server]
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.
sql - SQL2005リンクサーバークエリが定期的に失敗する
SQL 2005で実行されているデータベースがあります。ストアドプロシージャの1つは、リンクサーバーを使用してActiveDirectoryからユーザーの電子メールアドレスを検索します。リンクサーバーへの呼び出しは、データベース関数で発生します。
初めてAsp.Netアプリケーションから正常に呼び出すことができますが、その後定期的に次のエラーで失敗します。
{"リンクサーバー\"ADSI\"のOLEDBプロバイダー\"ADsDSOObject\ "が必要なトランザクションインターフェイスをサポートしていないため、要求された操作を実行できませんでした。"}
関数を呼び出す間の時間は、リンクサーバークエリが正しく機能するかどうかに影響するようです。取引は行っておりません。クイックシフトSQLスクリプトで関数を呼び出そうとすると、毎回正常に実行されます(すばやく連続してテストした場合でも)。
プロシージャを再度呼び出さないと自然に終了する、ある種のトランザクションが開いたままになっていることはありますか?私はここで途方に暮れています。
ストアドプロシージャでの簡単な呼び出しは次のとおりです。
sql - カーソル内に変数があるOPENQUERY
カーソルに変数を含むSQLServerでOpenQueryを返すにはどうすればよいですか?
sql-server - リンクされたSQLサーバーのクエリ
リンクサーバーリストに表示されているリンクサーバーを追加しましたが、クエリを実行すると、dbサーバー名でエラーがスローされます。
メッセージ102、レベル15、状態1、行
1'aa-db-dev01'の近くの構文が正しくありません。
sql-server - VSTS DB プロジェクトでの 4 部構成の名前のリンク サーバー クエリ エラーを解決するにはどうすればよいですか?
開発者版とデータベース版の両方がインストールされた VSTS 2008 を使用しています。DB エディションの GDR がインストールされています (バージョン 9.0.31124)。リンク サーバー (DB2 メインフレーム、iSeries、および SQL Server) を参照するコード内のいくつかの場所があります。そのような例の 1 つは、ストア プロシージャにある次のコードです。
このタイプのコードで未解決の参照エラー (TSD03006) が発生します。このタイプのリンク サーバー参照の処理方法に関する現在の推奨事項は何ですか? この場合、別の SQL Server 2005 インスタンスを扱っています。リンク先のデータベースには、使用しないテーブルがたくさんあります。そのため、可能であれば、その DB のスキーマ全体をプルダウンする必要は避けたいと考えています。
検索して見つけた情報が古いようです。GDR はこの 1 年間で大幅に変更され、現在は廃止されている以前の CTP バージョンから多くのガイダンスが提供されています。
sql-server - SQL ServerリンクサーバーでMSAccessワークグループファイルを指定するにはどうすればよいですか?
MSAccessmdbデータベースにリンクされたサーバーを含むSQLServerデータベースがあります。Accessデータベースにはワークグループセキュリティがあり、有効なユーザー名とパスワードが必要です。これは、SQLManagementStudioのリンクサーバーダイアログで簡単に設定できます。問題は、SQLServerがログインできるようにするためにMSAccessmdwファイルを見つけることができる必要があるということです。
これを機能させる唯一の方法SystemDB
は、レジストリキーのレジストリ値を設定することです。
ワークグループファイルのパスに移動しますが、これにより他の問題が発生します(他のMS AccessアプリやExcelなど)。
これを行うためのより良い方法はありますか?
sql-server - SQL 2005 の Teradata リンク サーバー
SQL Server 2005 でリンク サーバーを使用して Teradata に接続しようとしています。SQL Server を使用して OPENQUERY を使用して接続しようとすると、次のエラーが発生します。
メッセージ 7399、レベル 16、状態 1、行 1 リンク サーバー "TERADATA" の OLE DB プロバイダー "TDOLEDB.1" がエラーを報告しました。アクセス拒否。
メッセージ 7350、レベル 16、状態 2、行 1 リンク サーバー "TERADATA" の OLE DB プロバイダー "TDOLEDB.1" から列情報を取得できません。
「接続をテスト」するとテストは成功しますが、SQL Server Management Studio でカタログの既定のテーブルを表示しようとすると、同じエラーが発生します。SQL サーバーを実行しているコンピューター (開発ボックス) に Visual Studio をインストールしました。OLE DB ドライバーを使用して接続し、クエリを実行して、カタログの既定のテーブルに移動できます。リンク サーバーを Teradata で動作させるための秘訣はありますか? どんな提案でも大歓迎です。
--CDW
sql-server - リモート MSSQL テーブルのデータをローカル テーブルにコピーすることはできますか?
これを行う最善の方法は何ですか?いくつかのINSERT
ステートメントを見つけましたが、それらはすべて内部データベースのコピーにのみ機能するようです。
私の表現:
私はまだ MSSQL にあまり詳しくないので、どんな助けも歓迎します。
sql - SQLServer2005-リンクされたサーバーとエージェントジョブ
現在説明できない奇妙なシナリオがあります。私は、それが単なる「金曜日の気持ち」であるか、ここでの親切な唯一の人が私の脳を救い出し、「しかしなぜ!?」の無限ループから私を救うことを望んでいます。:)
SQL Server 2005を実行し、DNSエントリが次の2つのサーバー:
(まあ、彼らは実際にはそれと呼ばれていませんが、それで十分です...)
両方のSQLServerインスタンスには、他のサーバーを指すように構成されたリンクサーバーがあります。
明らかなセキュリティ上の理由から、LinkedServerのセキュリティ構成は次のように設定されています。
その他の「リンクサーバーオプション」は...
ログインは、両方のインスタンスで同じパスワードで作成されます。ログインには、関連するストアドプロシージャへの適切な実行権限が付与されます。
私はいくつかのコードを書き、そのログインの下でそれを実行します、そしてそれはすべてうまくいきます
しかし、これらのストアドプロシージャを実行するためにエージェントジョブを作成すると、すべてがうまくいきません。エージェントジョブの所有者は「automated_job_login」ですが、エラーログに次のように表示されます。-ユーザー「automated_job_login」のログインに失敗しました
(この場合も、有罪を保護するためにその名前が変更されています。)
そのユーザーとしてログインしたときになぜ機能するのか、一生理解できませんが、リンクサーバーに接続するとジョブエラーが発生します。(リンクされたサーバー接続の時点で間違いなくです。)
さらに混乱させるために、リンクサーバーのセキュリティ構成を「このセキュリティコンテキストを使用して作成する」に変更し、正しいパスワードで「automated_job_login」を指定すると、正常に機能します。
私は何かが欠けています、私は私がそうであるに違いないことを知っています、しかし私は何を見つけることができません。目が出血して失敗するまで、ドキュメントを読みました。私を助けてください :)
[Linked Server Secuiryオプションを「このセキュリティコンテキストを使用して作成する」のままにしておくことは、そのサーバーのすべてのユーザーに他のサーバーへの許容できないレベルのアクセスを与えるため、オプションではありません。]
sql-server - SQL Serverのプロシージャ/トリガー内のテキストを見つける方法は?
変更されるリンクサーバーがあります。一部のプロシージャは、次のようにリンクサーバーを呼び出します[10.10.100.50].dbo.SPROCEDURE_EXAMPLE
。この種の作業を行うトリガーもあります。それを変更するために使用するすべての場所を見つける必要があります[10.10.100.50]
。
SQL Server Management Studio Expressでは、VisualStudioで「データベース全体を検索する」などの機能が見つかりませんでした。特別なsys-selectは、必要なものを見つけるのに役立ちますか?
sql-server - SQL Server / Oracle リンク -- ユリウス日エラー
Oracle 8i データベースにリンクされた SQL Server 2000 データベースを持っているクライアントがいます。SQL Server 2000 データベースには、Oracle データベースを参照する多数のビューがあり、多くの場合、次のような単純な構文を使用しています。
これらのビュー (およびそれらを参照する sproc) は、YEARS の間問題なく動作しました。突然、今朝、それらの一部 (すべてではない) が次のエラーで失敗しています。
上記の 4 部構成の構文 (ビューで定義されているのと同じ構文) を使用してデータを選択すると、クエリは問題なく成功し、. ただし、その構文でビューを作成することはできず、(デザイナーで) 既存のビューを編集することはできません。また、リンクされたテーブルを直接クエリすると機能するのに、クエリを介してそれを使用すると失敗する理由を理解できません。
私の会社はシステムを構築しませんでしたし、私たちは通常それを維持していません.クライアントはそれに取り組んでいる社内の開発チームを持っていますが、彼らは私たちのトラブルシューティングの助けを求めました.ここで質問しようと思いました。
なぜこの動作が見られるのか、そしてさらに重要なことに、それを修正する方法を知っている人はいますか? (アップグレードには至りません。現時点ではオプションではありません。) 一時的な回避策として、 usingOPENQUERY
が機能することを発見しましたが、もちろん非常に遅いです。OPENQUERY
可能であれば、関係のない解決策を希望します。
コメントへの対応:ORDER BY
ビューには定義されていません。sprocs にあるかもしれませんが、確かではありません。(質問を投稿する約 20 分前に、このデータベースを初めて見ました。:))