問題タブ [postgres-fdw]

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.

0 投票する
1 に答える
1087 参照

postgresql - Postgres で外部テーブルのパーミッションを確認する方法

Postgres の外部テーブルのユーザー権限を確認する方法を知っている人はいますか?

\dEとを試しまし\detたが、うまくいきません。

誰が外部テーブルから選択、挿入、更新、削除できるか知りたいだけです。

0 投票する
1 に答える
717 参照

python - SQLAlchemy が postgres_fdw に接続された Postgre テーブルを見つけられない

SQLite 以外のデータベースの経験があまりないため、用語のタイプミスをお許しください。データベースを2番目のデータベースにアタッチし、すべてのテーブルでクエリを実行できるSQLiteで行うことを複製しようとしています。SQLite で SQLAlchemy を使用していませんでした

Win7/54 で SQLAlchemy 1.0.13、Postgres 9.5、Python 3.5.2 (Anaconda を使用) を使用しています。postgres_fdw を使用して 2 つのデータベース (localhost 上) を接続し、セカンダリ データベースからいくつかのテーブルをインポートしました。PgAdminIII で SQL を使用し、psycopg2 を使用して Python から、接続されたテーブルを手動で正常にクエリできます。私が試したSQLAlchemyで:

そしてエラーを取得します:

それから私は試しました:

アタッチされたテーブルは表示されません (プライマリ データベースのテーブルは表示されます)。私が達成しようとしていることを行う方法はありますか?

0 投票する
1 に答える
3019 参照

sql - リモート クエリは、インデックスを使用して postgres_fdw で実行します

ここで 述べたpostgres_fdwように、インデックスにはアクセスできません。

回避策は、リモート サーバーでビューを作成してから、ローカル サーバーでこのビューの外部テーブル ラッパーを作成することです。

しかし、ビューにパラメーターを渡したい場合はどうすればよいでしょうか? 通常、私はそれを作成function(myparam)RETURNS TABLE()ます。しかし、どのように呼び出すのpostgres_fdwですか?

この状況を解決するためのアイデアはありますか (dblink必要ない場合は使用しないことをお勧めします)。

リモートデータベースで実行する次のようなクエリがあります。

ご覧のとおり、_my_date内部にパラメーターがあります。

だから私は外部テーブルを作成my_remote_server_public.my_remote_server_public_fooし、次のようなローカルデータベースから実行しました:

しかし、これを行うと、インデックスpostgres_fdwにアクセスできないため、2〜3分続きます。foo

リモートデータベースで関数get_foo_by_date(_my_date date)を作成し、ローカルデータベースから呼び出すことを考えましたpostgres_fdwが、それが可能かどうかはわかりません...

アップデート

通常のビューを、内部に一定の日付を持つ外部テーブルとして処理すると仮定しましょう。

このビューは、リモート テーブルから ID のリストを返します。

リストされた行をリモート テーブルから削除し、これらをローカル テーブルにアーカイブしたいと考えています。

次のように呼び出すと:

5分間続きます...DELETEクエリはインデックスにアクセスできないため...dblinkここでも関数の呼び出しを使用する必要がありますか? 他の回避策はありますか?

0 投票する
1 に答える
1777 参照

postgresql - CSV ファイルからの PostgreSQL テーブルの更新

PostgreSQL テーブルの csv ファイルからデータを自動的に更新する方法を見つけようとしています。

csv ファイルには LabVIEW テスト データが含まれており、実行ごとに更新され、ローカル コンピュータに保存されます。

これまでのところ、2 つの方法を使用して csv からテーブル 'test1' にデータをインポートできます。

  1. COPY コマンド

    /li>
  2. 外部データ ラッパー (file_fdw)

    /li>

そこから、次を使用して test1 にデータを挿入できます

これは 1 回の更新では問題ありませんが、このプロセスを自動化する必要があります。トリガとトリガ関数を使用してみましたが、外部テーブルにトリガを作成できましたが、新しい LabVIEW テストを実行してもテーブルが更新されません。

file_fdw がトリガー機能をサポートしていないというフォーラムの投稿を読みましたが、最新バージョンの PostgreSQL (9.6) でこれを確認できる人はいますか?

外部テーブルまたは .csv ファイルから直接テーブルを自動的に更新する方法を知っている人はいますか?

0 投票する
1 に答える
1167 参照

database - postgres_fdw を使用して別のデータベースに挿入クエリを作成するにはどうすればよいですか?

実行したいクエリは次のとおりです。このクエリを実行している現在のデータベースは db1 であり、レコードを挿入するデータベースは db2 です。

ご覧のとおり、db1 (現在のデータベース) の従業員テーブルから値を選択し、db2 の従業員テーブルに挿入する必要があります。

クエリが間違っていることはわかっていますが、何をしようとしているのかを説明するために書いたところです。

postgres_fdw を使用してクエリを作成するにはどうすればよいですか?

このクエリを使用して、逆のことを試みました

編集:リモート挿入とローカル選択を行いたいことに注意してください。db1の代わりにローカルデータベースとしてdb2でクエリを実行すると、上記のクエリを使用してこれを達成できるようです

0 投票する
1 に答える
92 参照

sql - postgres_fdw を使用してリモート データベースのテーブルを更新しているときに、ここで何をしていますか?

これが私がやっている方法です:

次のクエリを実行すると、テーブル mydb.employee が存在しないと表示されます。

sometable はローカルテーブルです。従業員テーブルはリモートデータベースにあります

0 投票する
2 に答える
1147 参照

postgresql - 外部テーブルに一意のインデックスを作成するにはどうすればよいですか?

データベース 1 には、データベース 2 に外部テーブル a と b があります。

これらの外部テーブル a と b にインデックスを作成するにはどうすればよいでしょうか。これらの外部テーブルは、それぞれ database2.c および database2.d テーブルのラッパーであり、必要なインデックスが配置されています。

外部テーブル a と b にどのようにインデックスを作成しますか? それは可能ですか?

postgres で単純な Create Index コマンドを実行すると、「外部テーブル a にインデックスを作成できません」というメッセージが表示されます