Special Characters (Unicode, Ascii) in Python and MySQL
Carsten Haese
carsten at uniqsys.com
Tue Jan 2 08:43:38 EST 2007
On Mon, 2007-01-01 at 21:57 -0800, ronrsr wrote:
> I have an MySQL database called zingers. The structure is:
>
> zid - integer, key, autoincrement
> keyword - varchar
> citation - text
> quotation - text
>
> I am having trouble storing text, as typed in latter two fields.
> Special characters and punctuation all seem not to be stored and
> retrieved correctly.
>
> Special apostrophes and single quotes from Microsoft Word are causing a
> special problem, even though I have ''ed all 's
>
> perhaps the encoding of the database itself should be different? it is
> currenlty latin_swedish_ci
>
> Input and output is through a browser.
>
> I think my problem may be that I need to encode the string before
> saving it in the databse. Can anyone point me in the right direction
> here?
>
>
>
> here's the error message:
>
> UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position
> 95: ordinal not in range(128)
> args = ('ascii', "update zingers set keywords =
> 'a;Action;b;Religi... \n \n \n ' where zid = 422", 95, 96, 'ordinal not
> in range(128)')
> encoding = 'ascii'
> end = 96
> object = "update zingers set keywords = 'a;Action;b;Religi... \n
> \n \n ' where zid = 422"
> reason = 'ordinal not in range(128)'
> start = 95
>
>
>
> the characters I am trying to add are startquote and endquote copied
> and pasted from Microsoft Word.
>
>
>
> Can anyone help me on this?
Apparently not, since you've already posted this problem on December
18th and got various responses. Did you read
http://effbot.org/pyfaq/how-do-i-escape-sql-values-when-using-the-db-api.htm as Fredrik suggested in the earlier thread?
-Carsten
More information about the Python-list
mailing list