Setting the encoding in pysqlite2
Michele Simionato
michele.simionato at gmail.com
Thu Aug 25 04:15:55 EDT 2005
An easy question, but I don't find the answer in the docs :-(
I have a sqlite3 database containing accented characters (latin-1).
How do I set the right encoding? For instance if I do this:
#-*- encoding: latin-1 -*-
from pysqlite2 import dbapi2 as sqlite
import os
DBFILE="/tmp/example.db"
def writedb(conn):
c = conn.cursor()
c.executescript("""
create table example (word char(20));
insert into example values ("così");
""")
c.close()
def readdb(conn):
c = conn.cursor()
c.execute("select * from example;")
#print c.fetchall()
c.close()
if __name__ == "__main__":
conn = sqlite.connect(DBFILE)
writedb(conn)
readdb(conn)
conn.close()
os.remove(DBFILE)
I get UnicodeDecodeError: 'utf8' codec can't decode byte 0xec in
position 3: unexpected end of data
(notice, even if the 'print' statement is commented.
Michele Simionato
More information about the Python-list
mailing list