2017-01-02 4 views
0

私はpostgresでスキーマを作成するためにsqlalchemyを使用しようとしています。私は、メタデータを介してスキーマを作成し、スキーマの名前を宣言する関数を反映する方法の実例を見つけることができません。スキーマ生成のsqlachemyの説明

conn = db.postgres_db(host, port, database, pass, user) 
postg_meta = sql.MetaData(bind=conn.engine) 
postg_meta.reflect(schema='transactions') 
stat_query = sql.select([sql.distinct(acocunts.c.user_id)] 

これが私に与えられたコードのスニペットであり、私はどこでどのようにスキーマ(「取引」)が定義されて明確にしようとしています。私はsqlalchemyとその作業部分のいくつかの合理的なので、私はいくつかの援助に感謝する新しいです。

これは、スキーマが定義されている外部クラスを持つファイルを参照できますか?

ありがとうございました。

答えて

1

Postgresは、database.schema.tableのようにデータベースとテーブルの間で階層的に順序付けされたschemaという概念を持っています。

SQLAlchemyは、Postgresと他のデータベースにこの概念schemasをサポートしています。

reflectionを実行しているので、このスキーマがすでにがデータベースに存在することが暗黙のうちに示されています。これはschemaというキーワードです

あなたは、これはデータベース内のすべてのスキーマを一覧表示することでケースであることをconfirmことができます。

select schema_name 
from information_schema.schemata