【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
関連記事
-
【SQL Server 2012】テーブル、カラム、主キー、NULL制約、データ型、長さ、INDEXの有無の一括表示
職場のシステムリプレースに伴い、データベースのテーブル(カラム)の一覧が必要になりました。 普
-
【SQL Server】Excel VBAでSELECT文を実行してレコードセットへ取得
前回は、テーブルのレコードをVBAで直接更新(Insert/update/delete) 今回
-
【SQL Server 2012】バッチ(コマンドプロンプト)でリストア
バッチ(コマンドプロンプト)を使って、SQL Server 2012のリストアしてみたいと思います。
-
【SQL Server 2012】Management Studioを使ったバックアップで面白い機能。
Management Studioを使ったバックアップをかれこれ3年くらいやってるんですが、一つのバ
-
【SQL Server】varchar型、nvarchar型の文字数とバイト(byte)数を取得する
varchar型の文字数、バイト(byte)数を取得する方法 SELECT LEN(【文字
-
【SQL Server】アンインストール手順
手順としては、http://technet.microsoft.com/ja-jp/library/
-
【コマンドプロンプト】完成版!cmdでSQLの結果を変数に取得
以前、 【コマンドプロンプト】cmdでSQLの結果を変数に取得する方法 を書きましたが、
-
【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新
前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し 前回はVBAから更新S
-
【SQL Server 2012】SQLでエクセルをテーブルとして表示させる方法
SQL Management Studioを使用してインポート等は使用せずにSQLのみでテーブルを表
-
【SQL Server】データベース作成日時(リストアした日付)を確認する方法
トラブルの調査をするとき、開発用の環境を作成して、調査するのですが… この環境っていつ作成した
Comment
[…] ← 【ODBC】Access2007でSQL Server 2012に接続する為のサーバー側の設定 【Access2007】ODBCの罠。Windows7のコントロールパネルから作成したODBCがない。 → […]