Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 24, 2009 08:33:37

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

почему мне после 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.
что изменить?



Офлайн

#2 Сен. 24, 2009 09:59:04

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

вопросы по sqlite

rokki, воспользуйся поиском по форуму, это неоднократно обсуждалось…



Офлайн

#3 Сен. 24, 2009 12:12:58

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

не, я уже все обшарил и нашел, но не помогло, все равно пишет

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.

так что если есть возможность помочь-помогите, а то не могу продолжить



Офлайн

#4 Сен. 24, 2009 12:20:05

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

нашел, работает. спасибо за помощь



Офлайн

#5 Сен. 24, 2009 14:33:44

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

а как мне вместо %(begd)s использовать символ “?”



Офлайн

#6 Сен. 24, 2009 14:38:16

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

и почему мне после

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



Офлайн

#7 Сен. 24, 2009 16:08:22

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

вопросы по sqlite

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…



Отредактировано (Сен. 24, 2009 16:08:46)

Офлайн

#8 Сен. 25, 2009 12:25:05

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

igor.kaist, подскажи, я пример разбираю из книги Сузи 2002г., это опечатки в книге или что то еще?



Офлайн

#9 Сен. 25, 2009 14:33:13

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

вопросы по sqlite

rokki
igor.kaist, подскажи, я пример разбираю из книги Сузи 2002г., это опечатки в книге или что то еще?
Если честно, нет времени разбирать этот пример. просто посмотри, что в rec, и постарайся понять, что делает метод split()



Отредактировано (Сен. 25, 2009 14:34:31)

Офлайн

#10 Окт. 6, 2009 14:49:21

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

igor.kaist, не знаю с какого бока начать. Подкинь какую нибудь задачу, и сразу пару намеков для решения. Исходники с твоего сайта я скачал, но в голове ничего не укладывается.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version