■RODBCパッケージをインストール
しかし、RGuiのパッケージメニューからインストールしたほうが良い感じ(ヘルプなどがインストールされる)
> install.packages("RODBC")
■インストールされたかを確認する
> library()
※コンソールとは別にウィンドウが開き一覧が表示される
■RODBCを使うことを宣言
> library(RODBC)
■ODBCデータソースを使う場合
> db=odbcConnect("SQLServerHOME") > ds=sqlQuery(db,"select top 100 * from dbo.R_PackageList") > ds
※データソースを作るにはコントロールパネル→システムとセキュリティ→管理ツールを選択
ODBCデータソースをダブルクリックしてODBCデータソースアドミニストレーターを表示
ユーザーDNSで追加してドライバーを選択(SQLServer)して完了を押す
データソースの作成になるので任意のデータソース名と接続するSQLServerを選択(説明は省略可)
■ODBCドライバーで直接接続する場合(既定のデータベース、Windows認証で接続)
> db<- odbcDriverConnect('driver={SQL Server};server=HOME;database=R;trusted_connection=true') > db RODBC Connection 3 Details: case=nochange DRIVER=SQL Server SERVER=HOME UID=owner Trusted_Connection=Yes WSID=HOME DATABASE=R > ds=sqlQuery(db,"select top 100 * from dbo.R_PackageList") > ds
■ODBCドライバーで直接接続する場合(インスタンス名付きのデータベース、Windows認証で接続)
> db<- odbcDriverConnect('driver={SQL Server};server=HOME\\MSSQLSERVER2017;database=KEN_ALL;trusted_connection=true') > db RODBC Connection 8 Details: case=nochange DRIVER=SQL Server SERVER=HOME\MSSQLSERVER2017 UID=owner Trusted_Connection=Yes WSID=HOME DATABASE=KEN_ALL > ds=sqlQuery(db,"select top 100 * from dbo.KEN_ALL")
■ODBCドライバーで直接接続する場合(SQLServer認証)
> db<- odbcDriverConnect('driver={SQL Server};server=HOME\\MSSQLSERVER2017;database=KEN_ALL;UID=sa;PWD=パスワード') > db RODBC Connection 9 Details: case=nochange DRIVER=SQL Server SERVER=HOME\MSSQLSERVER2017 UID=sa PWD=****** WSID=HOME DATABASE=KEN_ALL
※インスタンス付きサーバー名を指定する場合、\\で接続する必要がある(通常は\一つ)。
これはR Consoleの"\"を表現する場合には"\\"にしなければならない規定がある
ファイルパスの接続文字でも同様の事が言える
C:\temp\test.xlsを指定する場合にはC:/temp/test.xlsとするかC:\\temp\\test.xlsとしなければならない
■その他AccessやExcelに接続する場合
odbcConnectAccess(access.file, uid = "", pwd = "", ...) odbcConnectAccess2007(access.file, uid = "", pwd = "", ...) odbcConnectExcel(xls.file, readOnly = TRUE, ...) odbcConnectExcel2007(xls.file, readOnly = TRUE, ...)
■パッケージのアンロード
> detach("package:RODBC")
■パッケージのアンインストール
> remove.pakages("RODBC")
※再インストールするにはRGuiを再起動する必要がある