久しぶりにAccessを触るとすっかり記憶が飛んでいます(^^ゞ。ちょっと昨日の記事と関連があるのですが、AccessにはSQL Serverなどに接続して使用するadpファイルがあります。そのadpファイルでSQL Server 2005 Express Editionに接続できない現象があったので、その解決方法を明記しておきます。

 まず、前提条件として下記の内容は旧Accessの2003の場合です。他のバージョンでもほぼ同じだと思いますが、最近のAccess 2010などはちょっと異なるかもしれません。

 実際にadpファイルでSQL Server 2005 Express Edition(以下、SQL Server)に接続するにはメニューバーの「ファイル」-「接続」で「データ リンク プロパティ」を開きます。

データ リンク プロパティ

データ リンク プロパティ


 「1.サーバー名を選択または入力します」ではプルダウン内のリストから該当するサーバーを選択するか、リストに無ければ「更新」ボタンで表示させるか、直接サーバー名を入力します。

 次に「2.サーバーへのログオンに必要な情報を入力します」でSQL Server側で設定した内容に合わせて「Windows NTの統合セキュリティを使用する」か「特定のユーザー名とパスワードを使用する」のどちらかを入力し、特定のユーザー名・・・の場合はユーザー名とパスワードを入力します。

 以上の2つが正しく完了すれば「3.サーバー上のデータベースを選択する」で該当するデータベースがプルダウンに表示されます。

しかし!

 プルダウンの三角(▼)をクリックすると

データリンクエラー

データリンクエラー

Microsoft データ リンク エラー
—————————
[DBNETLIB][ConnectionOpen (Invalid Instance()).]接続が正しくありません。

と表示されて、リストは空っぽ状態です。

 「おかしいな~?」

と空っぽの頭をひねって、考えて全然解決しません。そこで、困ったときのGoogle先生と言うことで先生に聞いてみるとこちらのページ

SQL Server Express に接続している場合、コンピュータ名の後に sqlexpress を付けて使用します。

と書かれています。早速、サーバー名の後ろに「sqlexpress」を付けてみると、あら不思議?!データベースを選択するプルダウンが動き、該当するデータベースが表示されました。データベースを選択し、「接続テスト」をクリックすると

「接続テストに成功しました。」のメッセージ

「接続テストに成功しました。」のメッセージ

接続テストに成功しました。

のメッセージが表示されました。

 普通だったらそんなパラメータが必要なんてわからないですが、おそらく仕様なので仕方がありません。あ~苦労した( ´Д`)=3

[サーバーへの接続] (データベース エンジン)

実践Accessアップサイジング (DB Magazine SELECTION)

著者/訳者:株式会社インフォース

出版社:翔泳社( 2008-07-03 )

定価:

Amazon価格:¥ 2,591

単行本 ( 272 ページ )

ISBN-10 : 4798117471

ISBN-13 : 9784798117478