久しぶりに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, adp, SQL Server