이것은 매우 이상합니다. (admitedly이 첫 번째 시도는 python/sqlite입니다.) fetchAll()을 수행하면 모든 행을 얻을 수 있습니다. 하지만 그 이외에 - 내가 뭘하려고 상관없이 항상 첫 번째 행을 반환하는 db 끝납니다 - 두 번째 반복이 null이 반환되기 때문에 중지합니다. 파이썬으로 이것을 코딩하는 방법에 문제가 있다면 궁금해하십니까? 데이터베이스가 정상인 것처럼 보입니다.sqlite 및 파이썬 - 첫 번째 결과 만 가져옵니다.
con = sqlite3.connect('backup.db')
con.row_factory = sqlite3.Row
cur = con.cursor()
cur.execute('select * from tb1;')
for row in cur:
try:
# row = dataCur.fetchone()
#if row == None: break
print type(row)
print ' Starting on: %i' % row[0]
cleaner = Cleaner(scripts=True, remove_tags=['img'], embedded=True)
try:
cleaned = cleaner.clean_html(row[2]) #data stored in second col
cur.execute('update tb1 set data = ? where id = ?;', (cleaned, row[0]))
except AttributeError:
print 'Attribute error'
print ' Ended on: %i' % row[0]
except IOError:
print 'IOexception'
두 분 모두 고맙습니다. – pencilNero