2016-04-06 15 views
0

データベースのテーブルの列名のみを抽出するにはどうすればよいですか?最適化されたSQLの出力

import sqlite3 
conn = sqlite3.connect('example3.db') 
c = conn.cursor() 
c.execute('SELECT name FROM sqlite_master WHERE type=\'table\'') #list all tables therein 
print c.fetchall() 
c.execute('SELECT sql FROM sqlite_master WHERE type=\'table\' AND name=\'students\'') #list columns in table 'students' 
print c.fetchall() 
conn.close() 

答えて

1

sqlite_masterを使用してテーブル名のリストを取得します。次にPRAGMA table_infoを使用して、表内の列を取得します。

例:

PRAGMA table_info(students); 

あなたはの列のリストを希望する各テーブルに対してこれを繰り返す必要があります。