Bar

Windows8RTMからSQL Server 2008 R2に接続する方法

WIN8_ODBC_SETUP

やっと接続できた・・・

Windows8RTMからSQL Server 2008 R2に接続する方法をメモ。

Windows8RTMを使い始めた頃からずっと接続できなかったので、正直うれしい!

なお、接続するログインユーザに気をつけないとハマります!

Windows8RTMからSQL Server 2008 R2に接続する方法

昨日いつも使用しているA5:SQL Mk-2のベータ版一覧を見ていたところ、Native Client11なる文字を発見!

image

これか?と思い、実際にテストしてみたところWindows8RTMからSQL Server 2008R2に接続できました。

接続方法は下記の通りです。

1.最新のSQL Server Native Clientをインストール

最新のSQL Server 2012 Native Client(SQLNCLI11)をダウンロードしてインストールします。

Microsoft® SQL Server® 2012 Feature Pack

ページ中央部にある「Microsoft® SQL Server® 2012 Native Client」欄を検索してください。

x86とx64の2種類がありますので、環境にあったプログラムをダウンロードします。

2.接続テスト

やり方はいろいろありますが、私はODBCデータ・ソース・アドミニストレイターからテストしました。

WIN8_ODBC

システムDSNを選択し、データソースを追加。

SQL Server Native Client 11.0を選択、各種情報を入力して接続テストを実行。

Windows認証の場合は、ログインしているユーザに気をつけてくださいね。

WIN8_ODBC_SETUP

3.アプリケーションから接続してみる

Excel2007で作ったOfficeアプリをExcel2013プレビューで修正、Windows8RTM上で実行してみたところ問題なく動作しました。

バージョンが違ってもちゃんと動作するMSの作り、バンザイですね。

なお、SQL Native Clientを使った場合のサンプルVBAはこんな感じ。

接続プロバイダはSQLNCLI11になりますので、この点を注意してください。

image

ADOアプリケーションの接続文字列も上記を参考にするか、MSDNの説明を見てください。

SQL Server Native Client と ADO の併用

注意:Microsoftアカウント+Windows認証だと接続に失敗

Windows8からログインユーザにMicrosoftアカウント(旧Liveアカウント)+パスワードが使えるようになりましたが、Windows8RTMからSQL Server 2008R2に接続しようとしてハマったのが、このログインユーザ!

Microsoftアカウントでログインし、Windows認証を使ってSQL Serverに接続すると

接続ユーザがxxxxx\Guest

となり、接続に失敗しました

この場合は旧来どおりログインユーザをローカルアカウントに変更して対応しました。

下記画像はローカルアカウント状態のスクリーンショットです。

MSaccount