【ODBC】Access2007でSQL Server 2012に接続する為のサーバー側の設定
公開日:
:
最終更新日:2015/01/12
データベース Access2007, ODBC, SQL Server 2012, サーバー側の設定, 接続
ODBCでAccess2007からSQL Server 2012へ接続する為には
SQL Server 2012側で設定をしなくてはなりません。
Access2007の接続側(Windows7)で、ODBCを作るだけでは接続エラーになってしまいます。
↓の画像の用に作成中に「接続できませんでした。~アクセスが拒否されました。」と表示され
接続エラーとなってしまいます。

そこで、SQL Server側の設定を行います。
調べてみると SQL Server 2008 Expressでの接続ですが、ありました。
http://www.atmarkit.co.jp/fdotnet/chushin/introwinform_09/introwinform_09_01.html
同様の手順で接続できましたので、メモしておこうと思います。
==================================================
SQL Server 構成マネージャーの設定
==================================================
■SQL Server 2012がインストールされているWindows Server 2012へログインし
Sql Server Configuration Manager(SQL Server 構成マネージャー)を起動し
【SQL Serverのサービス】/【SQL Server Browser】を開始します。

※無効になっている場合は、プロパティを開き、【サービス】タブの開始モードを自動へ変更し、開始する
■SQL Server 構成マネージャーの【SQL Server ネットワーク構成】/【[作成したインスタンス名]のプロトコル】を
選択し、【TCP/IP】を右クリックし、【有効化】します。

※[作成したインスタンス名]は特に意識せずにインストールした場合は【SQLEXPRESS】となっています。
■SQL Server 構成マネージャーの【SQL Native Client 11.0の構成】/【クライアントプロトコル】を選択し
【TCP/IP】を右クリックし、【有効化】。

※僕の場合、この項目はデフォルトで有効となっていました。
==================================================
SQL Server認証モードの有効化
==================================================
■SQL Server認証モードの有効化します。
SQL Server Management Studioへのログインし、オブジェクトエクスプローラーの[サーバー名]上で
右クリックし、【プロパティ】を選択します。

※僕の場合、
サーバー名:DBSERVER インスタンス:SQLEXPRESS なので、DBSERVER\SQLEXPRESSとなっています。
また、SQL Server Management Studioのインストールについては下記リンクで。
http://itdiary.info/?p=101
■【サーバーのプロパティ】画面でセキュリティを選択し
サーバー認証の【SQL Server 認証モードとWindows 認証モード】をチェックし、【OK】をクリック

==================================================
SQL Serverの認証モード用のログイン・ユーザーを作成
==================================================
■オブジェクトエクスプローラーの[サーバー名]/セキュリティ/ログインで右クリックし、
【新しいログイン】を選択。

■【ログイン – 新規作成】画面で【ログイン名】(任意)を入力し、【SQL Server 認証】にチェックを入れ、
パスワードを設定し、【OK】をクリック。

※パスワードポリシーがありますので、あまり短いパスワードだとエラーとなってしまいます。
以下のサイトにパスワードポリシーを満たす条件が書いてあります。
http://technet.microsoft.com/ja-jp/library/ms161959.aspx
==================================================
データベースユーザーの作成
==================================================
■オブジェクトエクスプローラーの[サーバー名]/データベース/[対象のデータベース]/セキュリティ/ユーザーを
右クリックし、【新しいユーザー】を選択

■【データベースユーザー – 新規】画面の【全般】で、下記を設定
・ユーザーの種類:ログインを持つSQLユーザー
・ユーザー名:任意
・ログイン名:さきほど作成したログインユーザー

■【メンバーシップ】を選択し、データベース ロールのメンバーシップで
下記2つをチェックし、【OK】をクリック。
・db_datareader
・db_datawriter

※「db_datareader」「db_datawriter」をチェックすることにより
ユーザーにデータベースの読み書きする権限を付与します。
以上で設定は完了です。
==================================================
ログインできるか確認
==================================================
■一度、SQL Server Management Studioを閉じ、再度、起動。
【サーバーへの接続】画面で、下記のように設定し、【接続】をクリック
・認証:【SQL Server 認証】
・ログイン:作成したログインユーザー
・パスワード:ログインユーザーで設定したパスワード

※この手順を見て実施して頂いた方は【接続】をクリックすると【パスワードの変更】画面表示されます。
設定したパスワードと同じパスワードを再度入力しても問題ありません。

■↓のようにログインし、適当なテーブルをSELECTし、内容が確認できていれば成功です。

次は、Access2007がインストールしてあるWindows7で、今回設定した接続でODBCを作成したいと思います。
Adsense
関連記事
-
-
【Management Studio】テーブル単位のメモリ使用量の確認
1.Management Studioを起動し、メモリ使用量が確認したい対象サーバーへ接続 2.確
-
-
【コマンドプロンプト】cmdでSQLの結果を変数に取得する方法
力技の取得方法をご紹介。というかメモ。 題名には偉そうに書きましたが…なかなか良い方法が見つか
-
-
【SQL Server 2012】テーブル、カラム、主キー、NULL制約、データ型、長さ、INDEXの有無の一括表示
職場のシステムリプレースに伴い、データベースのテーブル(カラム)の一覧が必要になりました。 普
-
-
【SQL Server 2012 Express】Windows Server 2012にインストールしてみる
Windows Server 2012にSQL Server 2012をインストールしてみる。 以
-
-
【SQL Server 2012】Management Studioで誰がデータベースに接続しているか調べる。
SQL Server 2012でリアルタイムで接続しているユーザーを確認するには Manageme
-
-
【SQL Server】エクセルをテーブルに取り込む方法
以前にManagement Studioを使ってSQLでエクセルを直接取り込む方法を書きましたが、今
-
-
【SQL Server 2012】SQLでエクセルをテーブルとして表示させる方法
SQL Management Studioを使用してインポート等は使用せずにSQLのみでテーブルを表
-
-
【SQL Server】バックアップ取得日を確認する方法
前回の記事で、SQL Serverのデータベースのリストアした日付を確認するSQLを作りましたが、今
-
-
【Management Studio】Microsoft SQL Server 2012 ExpressにManagement Studio のインストール方法。
前回、Windows Server 2012にSQL Server 2012 Expressをインス
-
-
【SQL Server】Management Studioでテーブルをデザインから変更するとエラーになる
変更の保存が許可されていません。行った変更には、次のテーブルを削除して再作成することが必要に

Comment
[…] ← 【ODBC】Access2007でSQL Server 2012に接続する為のサーバー側の設定 【Access2007】ODBCの罠。Windows7のコントロールパネルから作成したODBCがない。 → […]