Найти - Пользователи
Полная версия: вопросы по sqlite
Начало » Базы данных » вопросы по sqlite
1 2 3
rokki
почему мне после weekdays=
import sqlite3 as db
c=db.connect(database='tvprogram')
cu=c.cursor()
cu.execute('''DELETE FROM wd;''')
cu.executemany('''INSERT INTO wd VALUES(?,?);''',enumerate(weekdays))
c.commit()
c.close()
пишет ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.
что изменить?
igor.kaist
rokki, воспользуйся поиском по форуму, это неоднократно обсуждалось…
rokki
не, я уже все обшарил и нашел, но не помогло, все равно пишет

cu.executemany('''INSERT INTO wd VALUES(?,?);''',enumerate(weekdays,))
ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.

так что если есть возможность помочь-помогите, а то не могу продолжить
rokki
нашел, работает. спасибо за помощь
rokki
а как мне вместо %(begd)s использовать символ “?”
rokki
и почему мне после

import calendar, csv
import sqlite3 as db
from sqlite3 import Time, Date
db.Date, db.Time = Date, Time
c = db.connect(database=“tvprogram”)
cu = c.cursor()
input_file = open(“tv.csv”, “rb”)
rdr = csv.DictReader(input_file,fieldnames=)
for rec in rdr:
bd,bt=rec.split()
bdd,bdm,bdy=map(int,bd.split('.'))
bth,btm=map(int,bt.split('.'))
eth,etm=map(int,rec.split('.'))
rec=calendar.weekday(bdy,bdm,bdd)
rec = db.Date(bdy, bdm, bdd)
rec = db.Time(bth, btm, 0)
rec = db.Time(eth, etm, 0)
cu.execute(“”“INSERT INTO tv
(tvdate, tvweekday, tvchannel, tvtime1, tvtime2, prname,
prgenre)
VALUES (
%(begd)s, %(wd)s, %(channel)s, %(begt)s, %(endt)s,
%(prname)s, %(prgenre)s);”“”, rec)
input_file.close()
c.commit()

пишет
bd,bt=rec.split()
ValueError: too many values to unpack
igor.kaist
rokki
а как мне вместо %(begd)s использовать символ “?”
http://docs.python.org/library/sqlite3.html
rokki
bd,bt=rec.split()
ValueError: too many values to unpack
Посмотри для начала len(rec.split()), могу поспорить, что больше 2…
rokki
igor.kaist, подскажи, я пример разбираю из книги Сузи 2002г., это опечатки в книге или что то еще?
igor.kaist
rokki
igor.kaist, подскажи, я пример разбираю из книги Сузи 2002г., это опечатки в книге или что то еще?
Если честно, нет времени разбирать этот пример. просто посмотри, что в rec, и постарайся понять, что делает метод split()
rokki
igor.kaist, не знаю с какого бока начать. Подкинь какую нибудь задачу, и сразу пару намеков для решения. Исходники с твоего сайта я скачал, но в голове ничего не укладывается.
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