Найти - Пользователи
Полная версия: sqlite & csv
Начало » Базы данных » sqlite & csv
1
Cover Story
Всем доброго!!!
Есть код, который по замыслу автора, должен передавать данные из csv файла в таблицу sqlite3.
import sqlite3
import csv

f = open(r"C:\pythonprog\ats\ocapture1.csv")
csv.field_size_limit(100000) #see below!
input = csv.reader(f, delimiter=';')
conn = sqlite3.connect(r"C:\pythonprog\ats\sqlite\ats2.s3db")
curse = conn.cursor()

for item in input:
curse.execute("INSERT INTO ats VALUES (?, ?, ?, ?, ?, ?, ?, ?)", item)
curse.commit()
conn.close
При выполнении скрипта ошибки не выводятся. Но и в базу ничего не сохраняется. Правда создается файл ats2.s3db-journal который потом долго не пускает в базу пока не удалиться.
Помогите разобраться в данной ситуации.
shiza
может скобочки не поставил у conn.close(), т.е. по сути не закрыл коннект?
Cover Story
Спасибо, это мой недосмотр! Теперь все работает гораздо быстрей. Но данные как не добавлялись так и не добавляются :(
shiza
хм. скорее всего цикл у тебя не разу не выполняется.
Сделай в цикле print item, чтоб проверить что это так.
Cover Story
Спасибо, shiza. Ошибку нашел. curse.commit() надо исправить на conn.commit() и все будет нормально.
А цикл нормальный, раз десять запускал.
shiza
и кстати - как тебе удается сделать curse.commit()?
у курсора нет такого метода. такой есть только у conn

З.ы. Ты меня опередил =)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB