問題タブ [pg-promise]

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 投票する
2 に答える
169 参照

javascript - これら 3 つの JavaScript 関数の引数はどのように使用されますか?

JavaScript の関数と引数を調べましたが、以下のような関数を理解するのに役立つものは見つかりませんでした。元のチュートリアルを参照できます。

createPuppy には、req、res、next の 3 つの引数があります。

その関数はルーターによって呼び出されています:

db.createPuppy が呼び出されたとき、渡された引数はありませんでした。

これら 3 つの引数は、この関数にどのように適合しますか?

更新: Node、JavaScript、pg-promise、express は初めてです。なので、掘る場所を絞り込むのはちょっと大変でした。私はここに来て、自分の焦点をどこに絞るべきかについて手がかりを得ました。ありがとう!

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

arrays - 、桁jsonb 型ですが、式は text[] 型です

以下のような配列を持ち、JSONB 列に保存する必要があります。

DB に挿入する req.body オブジェクトを (Express から) 渡すだけです。

**pg-promise ライブラリ経由の PG DB はエラーをスローします:

私はそのドライバーの問題cos配列だと思います:formatting.jsの関数(arr)[pg-promise lib]は文字列を返し、postgresはそれを消化できません。配列が任意のオブジェクトにネストされている場合、スムーズに動作します。

ここで、MyPref は列 "FoodPref" を問題なく通過します。

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

javascript - Node JS を使用した動的 PostgreSQL ファイル

NodeJS アプリケーションで新しいクライアントを作成するための巨大な PostgreSQL ファイル (300 行) があります。(私は pg-promise を使用します。) ファイルを読み取り、次の単純なコードで結果を返します。

私はよく働きます。

ファイルを処理する前に、ファイル内で宣言された変数を手動で変更する必要があります。

たとえば、私の SQL ファイルは、20 ~ 30 個の変数を宣言することから始まります。

creation_client.sql :

私の質問: JavaScript から SQL ファイルに動的変数を挿入する方法はありますか?

0 投票する
3 に答える
2765 参照

node.js - pg-promise で列の更新をスキップする

Postgres 用の pg-promise を使用してノードに API を作成しました。これはうまく機能しますが、PUT ステートメントを変更して入力の NULLS をより適切に処理する方法を考えています。

以下は、PUT ステートメントのコードです。

これでこのステートメントは機能しますが、次の更新に NULLS を渡すと、既存の値も削除されます。たとえば、string1 と date2 だけを更新したい場合は、json オブジェクト全体を送信する必要があります。そうしないと、他のすべての値が NULL に設定されます。

これを処理するより良い方法はありますか?代わりに PATCH 動詞を使用する必要がありますか??

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

javascript - pg-promisesで子の約束から親の約束にエラーを投げる方法

「A」と「B」の2つのテーブルがあります。テーブル「A」の主キーを含むテーブル「B」に行を作成したいのですが、この操作全体はアトミックでなければなりません。

ここで、ネストされたプロミスでエラーが発生するたびに、親のプロミスを拒否し、そのエラーを親のプロミスに渡します。

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

node.js - Node.js での DB クエリ プロファイリング

を使用してjson APIを構築していますexpress(まあ、おそらくに移動しkoaます)。データをPostgreSQLデータベースに保存pg-promiseし、そこからデータを取得するために使用します(async/awaitbabel経由)。

私はnode.jsにまったく慣れていないので、その環境でのパフォーマンス測定に関する情報が見つかりません。

具体的には:

(可能であればプログラムで)どれくらいの時間がかかるか知りたいですSELECT。(2つのタイムスタンプを取得することで達成できる構築から解決までの時間の約束ではなく、DBサーバーがクエリを処理するために消費した実際の時間)。

これは達成できますか?もしそうなら、どのように?

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

node.js - pg-promiseによる追加データによる複数挿入

postgres db に挿入したい大規模なデータセットがあります。このように pg-promise を使用してこれを実現できます

データセットは、次のようなオブジェクトの配列です。

added_at課題は、データセットに含まれていない列を持っていることnullです。クエリにレコードを挿入するたびにタイムスタンプを追加するにはどうすればよいですか。

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

postgresql - travis-ci postgres `SELECT EXISTS` クエリが異なる結果を返す

pg-promiseテーブルの削除とテーブルの再作成を伴ういくつかのテストに取り組んでいます。

ローカル マシンですべてのテストに合格します。しかし ではtravis-ci、すべてのDROP TABLE ...SQL をスキップしているようで、結果としてテストが失敗します。

誰でも理由がわかりますか?許可の問題ですか?

travis-cipostgres サーバーに接続するなど、これをさらにデバッグする方法はありますか?

更新:すべてのテストがローカル環境でパスするため、コードを配置しなかったため、それは単なる問題だと思いましたtravis-citraivs-ci以下は、スキップしていると思われるビットです。

Update2:さらにいくつかのテストを行った結果、テストが失敗したのはそれが原因であることが判明しました。

db.one('SELECT EXISTS (SELECT 1 FROM information_schema.tables WHERE table_name=$1)', [tableName])

期待値を返していませんでした。クエリは{ '?column?': false }travis で返されますが{ exists: false }、ローカル環境で返されます。

これはtravis-ci問題ですか?またはpostgresのバージョンの問題?