ホーム › フォーラム › A5:SQL Mk-2掲示板 › SQL Server 2016への接続エラー
- このトピックには5件の返信、1人の参加者があり、最後に
mkにより1ヶ月、 1週前に更新されました。
-
投稿者投稿
-
sug
ゲスト多機能で使いやすいツールでとても便利に使わせていただいております。
Version2.21.0 beta 16以降でSQL Server 2016のデータベースを開くと、タイトルにある通りエラーとなります。
データベース登録時のテスト接続は問題ないのですが、データベースツリーから開くと以下のエラーメッセージが表示されます。
OLE DB error occurred. Code 800401F0h.
CoInitialize has not been called.環境は Windows11 Pro 24H2 です。
Version2.21.0 beta 15では問題なく開くことができます。
SQLServerのデータベース情報取得の方法が変更されたのでしょうか?
対処方法があればご教示いただけないでしょうか。松原正和
キーマスターsug さんこんにちは。
Version2.21.0 beta 16 では特に SQL Server にかかわるところは修正しておりません。Version2.21.0 beta 15 では、主にAI関連の処理の高速化のために SQL Server も含めてメタデータ取得処理に修正が入っています。現状、手元では SQL Server 2017, 2019 で試しているのですが、特にエラーは出ていません。
たとえば、DBを右クリックしてコンテキストメニューから「データベース を開く」を選んだ場合はどうなるでしょうか?sug
ゲスト松原様
回答ありがとうございます。コンテキストメニューから開いたところ、正常に開くことができました。
しかしBeta17、Beta18で試したところ「データベースを開く」で以下のメッセージが表示されました。
データベース接続でエラーが発生しました。
OLE DB error occurred. Code 800401F0h.
CoInitialize has not been called.データベースの追加と削除でのテスト接続は問題ありません。
最新のBeta26でも同様にエラーが発生します。
ただし、設定 -> オプション -> SQL Server で「OLE DB Providerを使わずに直接接続する」をチェックしたところエラーは発生しなくなりました。
この設定で利用しようと思います。ありがとうございました。
mk
ゲスト松原様
便利なツールで、ほぼ毎日使用させていただいております。
私の環境でも、beta14まで問題なかったのですが、
最近のバージョンで同様のエラーが確認されるようになり、
sug様と同様の回避方法を採っています。仮に、実施された高速化がマルチスレッド化でしたら、思い当たる記事がございます。
http://blog.livedoor.jp/blackwingcat/archives/2008129.html松原正和
キーマスターsugさん、mkさんこんにちは。
「CoInitialize は呼び出されていません。」のエラーを確認しました。Version 2.21.0 beta 17 から接続動作をマルチスレッド化していたのですが、COMオートメーションを使うときはスレッドで CoInitialize の呼び出しが必要だったようです。
Version 2.21.0 beta 29 で修正しましたので、ご確認いただければと思います。mk
ゲスト松原様
beta 29を早速ダウンロードいたしました。
「OLE DB Providerを使わずに直接接続する」のチェックを外しても、
私の環境におけるSQL Serverへの接続ができました。
早速のご対応、誠にありがとうございました。
今後ともよろしくお願いいたします。 -
投稿者投稿