問題タブ [postgresql]
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.
sql - 「アクティブ」フラグかどうか?
OK、つまり、事実上すべてのデータベースベースのアプリケーションは「非アクティブ」レコードを処理する必要があります。ソフト削除するか、何かを「無視する」とマークします。「アクティブ」列(またはステータス列)に根本的な代替案があるかどうかについて興味があります。
たとえば、私が人々のリストを持っていた場合
つまり、アクティブな人のリストを取得するには、を使用する必要があります
非アクティブなレコードを別のテーブルに移動し、2つを結合するために適切なUNIONが実行されることを提案する人はいますか?
好奇心が印象的...
編集: 私は明確にする必要があります、私は純粋主義者の観点からこれに来ています。大量のデータに対してデータアーカイブがどのように必要になるかはわかりますが、それは私がどこから来たのかではありません。SELECT * FROMの人々を行う場合、それらのエントリはある意味で「アクティブ」であることが私には理にかなっています。
ありがとう
windows - Windows用の良いpostgresqlクライアント?
数年間のオラクルの後、postgresqlに戻ってきました...
Windows で最新の postgresql 管理/ddl 生成/データ挿入フロントエンドとは何ですか? postgis との統合もあればいいのですが。スタンドアロンまたは intellij アイデアのプラグインである必要があります
振り返ってみると、私が使用した postgresql に固有のすべての Windows プログラム、特に PGAdmin はがらくたでした。良くなった?
java - Hibernate 3:PostgreSQLデータベースにクエリを実行できません
Hibernate 3.3.1 GA
とを使用してプロジェクトを設定していPostgreSQL 8.3
ます。最初のテーブルであるデータベースを作成し、そこに1つの行を追加して、Hibernateを構成しました。
ただし、最も単純なクエリでも次のようになります。
実行できませんでした(データベースに1つのレコードがありますが、空のリストが返されます)。PostgreSQLのログを調べて次のことを確認しました。
プレーンJDBCを使用して同じデータをフェッチする簡単なプログラムを作成しましたが、機能しました。この場合のPostgreSQLログは次のようになります(比較のため):
Hibernateデバッグログはエラーを示しません。ログにリストされているクエリを取得した場合:
psql内のデータベースに対して再度実行すると、機能します(これは、Hibernateが適切なSQLを生成したことを意味します)。
以下はHibernateの構成です。
...およびマッピングファイル:
ログエントリのグーグルunexpected EOF
は無駄ではありませんでした。何かアイデア、コミュニティ?
postgresql - PostgreSQL「DESCRIBETABLE」
DESCRIBE TABLE
(psqlコマンドを使用して)PostgreSQLでOracleと同等の機能をどのように実行しますか?
mysql - PostgreSQLデータベースをMySQLに変換する
逆のことをするための質問を見てきましたが、MySQLに変換する必要がある800MBのPostgreSQLデータベースがあります。私はこれが可能であると仮定しています(すべてが可能です!)、そして私はこれを行うための最も効率的な方法とそこに注意すべき一般的な間違いを知りたいです。私はPostgreの経験がほとんどありません。これに関するガイドへのリンクも役に立ちます!ありがとう。
sql - 非常に大きな PostgreSQL データベース テーブルを効率的に更新する
PostgresQL に非常に大きなデータベース テーブルがあり、「コピー済み」のような列があります。すべての新しい行はコピーされずに開始され、後でバックグラウンド プログラムによって別のものに複製されます。そのテーブルには部分インデックス「btree(ID) WHERE replicated=0」があります。バックグラウンド プログラムは、最大 2000 エントリ (LIMIT 2000) の選択を行い、それらを処理してから、2000 の準備された SQL コマンドを使用して 1 つのトランザクションで変更をコミットします。
ここでの問題は、この複製された値をリセットするオプションをユーザーに提供し、すべてをゼロに戻すことです。
更新テーブル セット レプリケート = 0;
不可能です:
- とても時間がかかります
- MVCCのため、テーブルのサイズが重複しています
- 1 つのトランザクションで実行されます。失敗するか、通過します。
この場合、実際にはトランザクション機能は必要ありません。システムがダウンした場合、システムはその一部のみを処理します。
その他のいくつかの問題:
また、悪いことです。テーブル全体でシーケンシャル スキャンを実行するため、遅すぎます。そうしないと、シークが多すぎるため、まだ遅くなります。
私が本当に必要としているのは、すべての行を通過し、それらを変更し、巨大なトランザクションに縛られない方法です。
奇妙なことに、
良いことではありますが、これも遅いです: DISK 順にテーブルを調べます...
(その場合、これをカバーする索引もあったことに注意してください)
(Mysql のような更新 LIMIT は PostgresQL では使用できません)
ところで: 本当の問題はもっと複雑で、既に展開されている組み込みシステムについて話しているので、リモートでスキーマを変更することは困難ですが、残念ながら PostgresQL 7.4 である可能性があります。
私が話している行の量は、たとえば 90000000 です。データベースのサイズは、数十ギガバイトになる場合があります。
データベース自体には 5 つのテーブルしか含まれておらず、そのうちの 1 つは非常に大きなものです。しかし、これは悪い設計ではありません。これらの組み込みボックスは、ERP システムなどではなく、1 種類のエンティティでのみ動作するからです。
何か案は?
nhibernate - NHibernate マッピング ファイルから「移行」DDL を生成するにはどうすればよいですか?
プロジェクトで NHibernate 2 と PostgreSQL を使用しています。SchemaExport クラスは、データベースの DDL スキームを生成する優れた仕事をしますが、最初のアプリケーションまでは優れています。
NHibernate マッピング ファイルを使用して "移行" DLL (DROP/CREATE ペアの代わりに "ALTER TABLE" のバッチ) を生成する方法はありますか?
postgresql - PostgreSQLの説明は正確に何を教えてくれますか?
MySQL の Explain 出力は非常に単純です。PostgreSQL はもう少し複雑です。それを説明する適切なリソースも見つかりませんでした。
説明が何を言っているのか正確に説明できますか、または少なくとも良いリソースの方向性を教えてもらえますか?
sql - Common Lisp で使用するのに最適な SQL ライブラリは何ですか?
理想的には、Oracle、MS SQL Server、MySQL、および Posgress で動作するものです。
python - psycopg2 をインストールしようとすると「-lpq が見つかりません」
はじめに : Trac SQLite を PostgreSQL バックエンドに移行しようとしています。そのためには psycopg2 が必要です。www.initd.org の恥ずかしい暴言をクリックした後、最新バージョンをダウンロードして実行してみsetup.py install
ました。これはうまくいかず、mingwが必要だと言ってくれました。そこで、mingwをダウンロードしてインストールしました。
問題: 実行時に次のエラーが表示されるようになりましたsetup.py build_ext --compiler=mingw32 install
。
私が試したこと - -L オプションのスラッシュに気づいたので、setup.cfg の library_dirs オプションに手動で PostgreSQL lib ディレクトリを入力しましたが、役に立ちませんでした (呼び出しにはバックスラッシュ付きの -L オプションがありました。しかし、エラーメッセージは同じままでした)。