sqlite テーブルをテキスト ファイルにエクスポートしようとしていますが、このサイトで大きな助けが見つかりました。小さい出力にはうまく機能しますが、約 20k に達すると、出力が制限されているように見えます。
最初の試みは:
Bells UniCodeWriter に あるようにマークします。
私のテーブルには 15 列ありますが、読みやすくするためにここに 5 つリストしました
writer = UnicodeWriter(open("Export8.csv", "wb"))
writer.writerow(["RunID","JobNumber","StartTime","EndTime","Period"])
writer.writerows(results)
2回目の試みは次のとおりです。
response = cursor.execute("SELECT RunID, JobNumber, StartTime, EndTime, strftime('%s',substr(endtime,1,19)) - strftime('%s',substr(starttime,1,19)) FROM tblTest WHERE RunID <>0")
strfile = open('_output1.csv','wb')
for row in response:
print >> strfile,row
3回目の試みは次のとおりです。
strfile = open('_output3.csv','wb')
while True:
row = cursor.fetchone()
if row == None:
break
print >> strfile,row
enter code here
4回目の試行/テスト:
response = cursor.execute("SELECT RunID, JobNumber, StartTime, EndTime, Period FROM tblTest WHERE RunID <>0")
print response
結果
試行 1: 183 個の完全なレコードと、184 個のレコードの最初の列の出力を取得します
試行 2 および 3: 181 の完全なレコードと 182 のいくつかの列の出力を取得します。
試行 4: すべてのデータを画面に表示する
sqlite データベースを確認すると、205 件のレコードが表示されます。一度に100行しか出力できないことは承知していますが、なぜすべての行が出力されないのか疑問に思っています