4

SQLAlchemy またはその他の Python ライブラリを使用して、実行時にテーブル (MySQL DB) で利用可能なフィールドを実用的に決定することは可能ですか? これに関するヘルプは素晴らしいでしょう。

ありがとう。

4

3 に答える 3

3

リフレクションはこれを行うことができます。

sqlalchemyを使ってデータベースを一括反映する

meta = MetaData()
meta.reflect(bind=someengine)
users_table = meta.tables['users']
addresses_table = meta.tables['addresses']
# fields of address_table
fields = addresses_table.columns.keys()

詳細については、http://docs.sqlalchemy.org/en/rel_0_7/core/schema.html#reflecting-database-objectsを参照してください。

于 2012-07-16T08:50:56.150 に答える
0

を実行してSHOW TABLE TABLENAME、テーブルの列を取得できます。

于 2012-07-16T08:12:54.050 に答える
0

これは Python の std DB API 仕様 ( pep 249 )、つまりカーソルの説明メンバーの一部であるため、SQLAlchemy は必要ありません。

たとえば、http://www.pymysql.org/を使用する場合、ユーザーはテーブルです

import pymysql

conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='', db='mysql')
cur = conn.cursor()
cur.execute("SELECT * FROM user")
print cur.description
于 2012-07-16T09:18:07.277 に答える