[DB-SIG] How to escape special field name, mysql?

Carsten Haese carsten at uniqsys.com
Tue Aug 7 20:10:53 CEST 2007


On Tue, 2007-08-07 at 13:06 -0500, Lukasz Szybalski wrote:
> On 8/7/07, Carsten Haese <carsten at uniqsys.com> wrote:
> > On Tue, 2007-08-07 at 11:58 -0500, Lukasz Szybalski wrote:
> > > Hello,
> > > I have installed mysqldb python bindings and I am using python to
> > > write to mysql.
> > >
> > > I have a field called "Desc" in a database (short for description )
> > > But this name is used by mysql for sorting DESC
> > >
> > > When i do:
> > > insert into tablename(id,desc)VALUES(1,'some text')
> > >
> > > How do I escape 'desc'?
> >
> > insert into tablename(id,`desc`) ...
> >
> >>> conn=MySQLdb.connect( SERVER, USER, PASS, DB )
> >>> c=conn.cursor()
> >>> c.execute("insert into tablename('desc')Values('sss')")

You are quoting the name in apostrophes (ascii character 39). You should
be using backwards apostrophes (ascii character 96).

-- 
Carsten Haese
http://informixdb.sourceforge.net




More information about the DB-SIG mailing list