問題タブ [psycopg2]
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.
psycopg2 - psycopg2とsys.stdin.read()
私は以下のような小さなコードを持っています:
私がそれを実行すると、私は得ました
「v_num='1'」を「v_num=sys.stdin.read()」に置き換えようとしています
しかし、私がそれを実行すると、私はこれしか得られませんでした:
修正方法について教えてください
心から
-ビノ-
python - Pythonで直接PostgresCOPYを再作成しますか?
現在nタプルのリストとしてデータのブロックがありますが、形式はかなり柔軟なので、Postgresテーブルに追加したいと思います。この場合、各nタプルはDBの行に対応します。
これまで私が行っていたのは、これらすべてをCSVファイルに書き込み、postgresのCOPYを使用してこれらすべてをデータベースに一括ロードすることです。これは機能しますが、最適ではありません。Pythonから直接これをすべて実行できるようにしたいと思います。python内からPostgresでCOPYタイプのバルクロードを複製する方法はありますか?
python - Python(およびおそらくPsycopg2)の下にpostgresqlテーブルが存在するかどうかを確認する
Psycopg2 Python ライブラリを使用してテーブルが存在するかどうかを確認するにはどうすればよいですか? true または false のブール値が必要です。
sql - 同じ名前のテーブルを持つ2つの異なるデータベースをクエリするPostgresql
こんにちは、Python の psycopg2 ライブラリを使用して、現在 DB に接続し、次のように取得できます。
「db1」という名前のデータベースの横に、同じテーブルを含む別のIPから別のデータベースにクエリを実行し、クエリを追加する必要があります。
どうすればこれを達成できますか?
django - SnowLeopardへのPostgreSQLとpyscopg2のインストール
私はまだWeb開発の分野で完全な初心者であり、Django環境をセットアップしようとしています。練習を始めるために「djangoの決定的なガイド」を読んでいます。
私はMacBook2.1GHzでSnowLeopard(10.6.2)を実行しています。Python2.6.1に付属しています。Python2.6.1がプリインストールされたSnowLeopardcamなので、追加のセットアップは行いませんでした。もっとセットアップが必要かもしれませんが、教えてください。しかし、私はそれを実行しました、そしてそれは動作します。
本から直接djangoをインストールしました。私はそれを実行しました、そして今のところそれは動作します。
データベース構成は私を困惑させるものです。
Python用のMySQLdbモジュールを使用してMySQLをインストールしようとしましたが、32ビットアーキテクチャと64ビットアーキテクチャの違いに問題がありました(mysqlには64、pythonには32、またはその逆。どちらにしても、理解できませんでした)。私は多くのフォーラムを読み、何時間もそれをいじくり回しましたが、それでもそれを修正することができず、私はただあきらめました。
そこで、次善の策を試しました(またはそう思いました)。代わりにPostgreを設定してみましょう。そこで、Postgreの公式Webサイトにアクセスして、MacOSXの分割払いパッケージを選びました。ダウンロードして解凍すると、「。app」インストーラーと「README」だけでした。私はインストーラーを実行しました、何とか何とか何とか、私は指示に従いました、それはこれをしました、それはそれをしました。最後に、どうやらPostgreがインストールされています。
インストールされているかどうか完全にはわからなかったので、インターネットで答えを探しました。さて、Mac用のDjangoをインストールするための公式ドキュメントを見つけましたが、Postgreをインストールする手順は完全に異なっていました。たぶん、「。app」インストーラーは、それらのステップにリストされている構成のほとんどを実行しました、私は知りません。
次に、ターミナルに移動して次のように入力します。
(インストールしたPostgreのバージョンを確認するため)
と
(データベースを実行するため)
「psql」または「pg_ctl」コマンドが見つかりませんでした。私にとって、これはPostgreがインストールされていない、またはまだ実行する必要のあるセットアップがあるということです。
そこで、Djangoの指示(上記のリンク)からPostgreをインストールする最初のステップを検討し始めました。'〜/ .profile'を編集するように指示されているので、すべてのファイルとディレクトリを再表示した後でも、ユーザーディレクトリの下にそれが見つかりません。
この時点で、私はちょっとイライラしていて、どこに行けばいいのかわかりません。この時点で、方向性/ヒント/ハウツー/何かを本当に得ることができるかどうか疑問に思いました。
Postgreを実行するまで、psycopg2を実際にインストールすることはできませんが、見た目からすると、インストールするのはそれほど悪くはありません(またはそう願っています)。
助けてくれてありがとう^_^
-トライ
python - タイムスタンプ (datetimes) の配列に psycopg2 パラメータを指定する方法
type の列でフィルタリングする psycopg2 を使用して、Python で PostgreSQL クエリを実行したいと思いますtimestamp without timezone
。(範囲ではなく) タイムスタンプに許可される値の長いリストがあり、psycopg2 は便利に配列を処理するので、これはうまくいくはずだと思いました:
times
パラメータはdatetime
オブジェクトのリストです。私も試しpsycopg2.Timestamp()
ました。どちらも変換されWHERE thetimestamp = ANY (ARRAY['2009-07-06T00:00:00', '2009-07-07T00:00:00', ...])
、残念ながら次のエラーで失敗します。
これはpgAdminでも確認済みですので、psycopg2だけではありません。起こっているように見えるのは、Postgres が文字列の配列をタイムスタンプの配列に暗黙的に変換しないということです。pgAdminの各要素に明示的に追加すると、単一の文字列が正常に変換され、配列::timestamp
が正常に機能しますが、psycopg2でそれを行う方法がわかりません。
DB-API パラメータを忘れて、タイムスタンプの長い文字列を手動で作成する以外に、これを行う最善の方法は何ですか? 正しい型にキャストする方法はありますか?
django - Django/Postgresqlでのlivelockのデバッグ
Apache2、mod_python、およびpostgresql_psycopg2データベースバックエンドを備えたPostgreSQL8.3を使用してDjangoで適度に人気のあるWebアプリを実行します。私は時折ライブロックを経験しています。これは、apache2プロセスが数分以上CPUの99%を継続的に消費している場合に識別できます。
apache2プロセスでstrace- ppidを実行したところ、次のシステムコールが継続的に繰り返されていることがわかりました。
この正確なフラグメントはトレース内で継続的に繰り返され、最終的にapache2プロセスを強制終了する前に10分以上実行されていました。(注:これを編集して、以前のstraceフラグメントを、切り捨てられるのではなく、文字列の内容全体を表示する新しいフラグメントに置き換えました。)
上記の私の解釈は、djangoが私のテーブルaccount_profileで存在チェックを行おうとしているということですが、ある初期の時点(トレースを開始する前)で何かがうまくいきませんでした(SQL解析エラー?参照整合性または一意性制約違反?誰が知っていますか? )、そして今Postgresqlはエラー「現在のトランザクションは中止されました」を返しています。何らかの理由で、例外を発生させてあきらめる代わりに、再試行を続けます。
1つの可能性は、これがProfile.objects.get_or_createの呼び出しでトリガーされていることです。これは、account_profileテーブルにマップするモデルクラスです。おそらく、get_or_createに、広すぎる例外のセットをキャッチして再試行するように設計されたものがありますか?Webサーバーのログから、このライブロックは、サイトの登録フォームのPOSTボタンをダブルクリックした結果として発生した可能性があるようです。
この状態は、ライブサイトで過去数日間に数回発生し、介入するまで大幅に遅くなるため、無限のデッドロック以外のほとんどの問題が改善されます。:)
python - pyscopg2 でクエリの実行をキャンセルする
pyscopg2 (python Postgres ドライバー) を使用してクエリステートメントの実行をキャンセルするにはどうすればよいでしょうか?
例として、次のコードがあるとします。
次に、別のスレッドからその長時間実行されているクエリの実行をキャンセルしたい - これを行うには、接続/カーソルオブジェクトでどのメソッドを呼び出す必要がありますか?
django - DjangoのDATABASE_ENGINEでどのPostgres値を使用する必要がありますか?
DjangoでPostgreSQL8.4.2を使用するのは初めてです(これまでは常にMySQLまたはsqlite3を使用していました)。、またはDATABASE_ENGINE
でどの値を使用する必要がありますか?それらはどのように異なりますか?settings.py
postgresql_psycopg2
postgresql
python - psycopg2を使用してPostgresのSQL「LIKE」値をエスケープします
psycopg2には、PostgresのLIKEオペランドの値をエスケープする機能がありますか?
たとえば、「20%of all」という文字列で始まる文字列を照合したい場合は、次のように記述します。
ここにプラグインできる既存のescape_sql_like関数はありますか?
(文字列値を明示的に引用する方法(Python DB API / Psycopg2)と同様の質問ですが、答えが見つかりませんでした。)