これは私の以前のクエリに多少関連しています..
問題はランタイムにあったため、sqlite3 データベースを使用するように提案されました。これにより、時間がミリ秒に短縮されました。非常に満足しています。現在、唯一の問題は、同じフォルダー内の異なるデータベース ファイルに接続することです。すべてのデータベース ファイルに同じテーブルがあります。
私が使用しているコードは、最初のものだけを読み取り、他のデータベースをチェックしていないようです。
出力は、教師が学生 ID を入力すると、データベース テーブルに見つかった場合に関連するレコードが返されることになっています。
私のコードはこのようなものですが、私は何か間違ったことをしていると確信しています。初めてsqlite3を使用するので、ばかげている場合はご容赦ください。
#other codes above not related to this part
databases = []
directory = "./Databases"
for filename in os.listdir(directory):
flname = os.path.join(directory, filename)
databases.append(flname)
for database in databases:
conn = sqlite3.connect(database)
conn.text_factory = str
cur = conn.cursor()
sqlqry = "SELECT * FROM tbl_1 WHERE std_ID='%s';" % (sudentID)
try:
c = cur.execute(sqlqry)
data = c.fetchall()
for i in data:
print "[INFO] RECORD FOUND"
print "[INFO] STUDENT ID: "+i[1]
print "[INFO] STUDENT NAME: "+i[2]
#and some other info
conn.close()
except sqlite3.Error as e:
print "[INFO] "+e
ガイドをありがとう