40

PostgreSQL スキーマを .sql ファイルに保存しています。次のようになります。

CREATE TABLE IF NOT EXISTS users (
    id INTEGER PRIMARY KEY,
    facebook_id TEXT NOT NULL,
    name TEXT NOT NULL,
    access_token TEXT,
    created INTEGER NOT NULL
);

データベースに接続した後、このスキーマをどのように実行すればよいですか?

私の既存の Python コードは、SQLite データベースで機能します。

# Create database connection
self.connection = sqlite3.connect("example.db")

# Run database schema
with self.connection as cursor:
    cursor.executescript(open("schema.sql", "r").read())

executescriptしかし、psycopg2にはカーソル上にメソッドがありません。では、どうすればこれを達成できますか?

4

2 に答える 2

10

評判が悪いため、選択した回答のコメントに返信できないため、問題を解決するための回答を作成しますCOPY

DB のボリュームに応じて、s ではなく s を出力pg_dump --insertsしますINSERTCOPY

于 2016-02-11T14:22:18.777 に答える