問題タブ [rpostgresql]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - RHEL 6.5 への RPostgreSQL のインストール libpq-fe.h エラー
R (3.1.1) と RStudioServer (0.98.1062) がインストールされた RHEL 6.5 サーバーがあります。
postgresql-9.3 をインストールして、大規模なデータベースを処理しています。R を PostgreSQL に接続するために、私は過去に RPostgreSQL を使用しました (まだ CentOS 7 ワークステーションで使用しています)。ただし、RHEL 6.5 でコンパイルしようとすると、エラーが発生します。
ファイルは私のシステムの次の場所にあります。
Libpq は Postgres インストールの一部ですが、RPostgreSQL はそれを見つけることができません:
RPostgreSQL にどこを見るか (シンボリック リンク?) またはその他の回避策を伝える方法はありますか? これは簡単なはずですが、すでに数時間を無駄にしています...
r - R postgresql - dbWriteTable がデータを適切にコミットしていません
奇妙な行動を発見。R を使用して既存の postgresql テーブルに多数の行を追加しようとしています。新しい行はテーブルに追加されます。
エラーは返さTRUE
れず、コピーが機能したと思います。ただし、開いたターミナル ( psql
) で次のコマンドを実行すると:
戻り値:
その後、R に戻ってテストするとき
データを正しく表示します。
どうしたの?データは Postgres データベースに正しく保存されていますか? 行を手動で挿入した場合 ( INSERT INTO ...
)、即時カウント テストは意図したとおりに機能します。
r - 同じクエリ、異なる結果。考えられる原因?
テスト目的で、2 つの異なる GUI (RStudio と SquirreLSQL) を使用して、同じデータベースから同じテーブルをクエリしています。
SquirreLSQL コンソールのクエリは次のようになります。
RStudio には、次のコードがあります。
SquirreLSQL で実行されたクエリは、RStudio で実行されたクエリのほぼ 2 倍の行を返します。まったく同じクエリが異なる値を返す原因は何ですか? 表と内容は変わりません。
mysql - RMySQL を使用すると RPostgreSQL に干渉する
MySQL データベースからデータを取得し、次に PostgreSQL データベースからデータを取得する R スクリプトがあります。ただし、RMySQL から MySQL ドライバーをロードすると、PostgreSQL ドライバーを からロードできなくなりますPostgreSQL
。
Postgres ドライバーを単独で読み込むことができます。
次に、RMySQL ドライバーをロードします。
ただし、最初に MySQL ドライバーをロードすると、PostgreSQL ドライバーのロードに失敗します。
これはちょっと魔法のように思えます: RMySQL は RPostgreSQL の名前空間の関数を変更すべきではありません。
この問題の原因と解決方法を知っている人はいますか? 2 台の異なるマシンで問題を再現しましたが、結果はまったく同じでした。
マシン 1: Mac OS 10.9.5:
マシン 2: Fedora リリース 20 (Heisenbug):
/edit: さらに、Postgres ドライバーを最初にロードしても、MySQL ドライバーをロードするだけで Postgres ドライバーが完全に停止します。
/edit 2: これは のバグですRMySQL 0.10
。上記のコードは で正常に動作しRMySQL 0.9.3
ます。 この 20 か月前の質問から判断すると、同様のバグが RMySQL で時々発生します。
r - Windows 7 ではなく CentOS 6.5 で RPostgreSQL と RJDBC を使用した dbSendQuery のエラー
AWS でホストされている CentOS 6.5 ボックスで発生する、Windows マシンでは発生しない奇妙な問題に遭遇しました。
大きな dbSendQuery (15,000 バイト/文字以上の文字列) を送信すると、エラー メッセージが表示されます。より小さなクエリでは、問題なく実行されます。
最初は、Postgres のインストールに問題があると思ったので、9.4 に更新しましたが、RPostgreSQL でも同じエラーが発生しました。次に考えたのは、これは SSL の問題であるということでした。そのため、sslmode=disable フラグを指定して RJDBC を試しましたが、これもうまくいきませんでした。
これは、RPostgreSQL のエラー メッセージです。
これは RJDBC のエラーです。
ここに私の CentOS 6.5 の sessioninfo() があります
Windows 7 での sessionInfo() は次のとおりです。
これらのエラーの原因となるサンプル dbSendQuery() クエリを添付しますが、15,000 文字であるため、これが良いアイデアかどうかはわかりません。これの使用例は、私の場合は 500++ 列の CREATE TABLE ステートメントを自動生成することです。私の Windows マシンでは、クエリが 0.5 秒で送信され、Redshift 側ではほぼ瞬時にテーブルが作成されるため、クエリに時間がかかりすぎる (そしてタイムアウトになる..?) という問題はありません。
ありがとう!
r - 接続文字列を使用した RPostgreSQL dbConnect
RPostgreSQL パッケージを使用して、資格情報をdbConnect
メソッドにハードコーディングする以外に、リモートの PostgreSQL インスタンスに接続する方法はありますか?
私が知る限り、これがそれを行う唯一の方法です:
確かに接続文字列などを使用する方法はありますか?
編集:接続文字列を含むファイル(ソースコードとは別)または環境変数を参照することを意味します。.pgpass
私のホームディレクトリやDATABASE_URL
herokuのようなものです。ソースコードに DB 資格情報が含まれないようにするための方法です。