私はRにかなり慣れていないので、この質問をもう一度尋ねているかもしれませんが、適切な答えが見つからなかったので投稿しています。
RODBC を使用して R から離れた場所にある Oracle DB に接続しようとしています。多くの RODBC 構成ドキュメントを確認しましたが、リモート Oracle DB への接続と根本原因を明確に示しているものはありません。
ROracleを DBI として使用することも検討しましたが、 RODBCが複数の理由ではるかに優れていることがわかりました。
だから、ここに私のコードがあります:
> # Load RODBC package
> library(RODBC)
> # Create a connection to the database
> dbconnection <- odbcDriverConnect("Driver={Oracle ODBC Driver}; Server=my_hostname; Database=my_db_name; Uid=my_uid; Pwd=my_pwd")
> # Check that connection is working
> odbcGetInfo(dbconnection)
> close(dbconnection)
そして、私が使用する TNS Config [明らかな理由で変更された値] :
my_db_name =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = my_hostname)(PORT = my_port))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = my_service_name)
)
)
注:ここでのもう 1 つのことは、ローカルの Oracle DB セットアップがないことです。SQL Developer を使用して、指定された TNS 構成でリモートの Oracle DB に接続します。
以下のエラーが表示されます。
Warning messages:
1: In odbcDriverConnect("Driver={Oracle ODBC Driver}; Server=my_hostname; Database=my_db_name; Uid=my_uid; Pwd=my_pwd") :
[RODBC] ERROR: state 01000, code 0, message [unixODBC][Driver Manager]Can't open lib 'Oracle ODBC Driver' : file not found
2: In odbcDriverConnect("Driver={Oracle ODBC Driver}; Server=my_hostname; Database=my_db_name; Uid=my_uid; Pwd=my_pwd") :
ODBC connection failed
install.packages("RODBC")
Rをインストールした後、コマンドを使用してRODBCをインストールしただけです。また、これをMac OSで実行しています。
私はここで何かが欠けていることを知っています。具体的にはDriver={Oracle ODBC Driver}
、実際のドライバー名に変更する必要がある場合があります。しかし、それがどうあるべきかわからず、グーグルはあまり役に立ちませんでした。
インストールまたは構成する必要があるものは他にありますか?