468,305 Members | 1,472 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 468,305 developers. It's quick & easy.

Latest errors on pickled objects and blob datatypes in mysql

hello,
finally the errors for my sql query have changed so I have even
changed the thread subject because I feel now that this is not doable
in mysql and this seams to be a bug, ither in python or the MySQLdb
module or perhaps both.
my table is called testobj and the blob field is called obj.
now following is my query with the cursor named CSRInsert.
CSRInsert.execute("insert into testobj (obj) values (?);",(pickled_object))
the error is,
"type error, not all arguments formatted during string formatting ".

can some one now figure out what could be the problem?
May 7 '07 #1
2 1313
On 7 Mag, 19:08, "krishnakant Mane" <researchb...@gmail.comwrote:
hello,
finally the errors for my sql query have changed so I have even
changed the thread subject because I feel now that this is not doable
in mysql and this seams to be a bug, ither in python or the MySQLdb
module or perhaps both.
And why not also a bug in MySQL? Or a neutrino hitting your CPU
changing a 0 into an 1? Doesn't the Occam razor suggest it may be your
fault? :)
my table is called testobj and the blob field is called obj.
now following is my query with the cursor named CSRInsert.
CSRInsert.execute("insert into testobj (obj) values (?);",(pickled_object))
the error is,
"type error, not all arguments formatted during string formatting ".

can some one now figure out what could be the problem?
Please, read the fine manual.

if you had read the DBAPI documentation as previously suggested, you
would know that you MUST use "%s" placeholder, not "?" (because
MySQLdb.paramstyle == 'format'). Just replace the placeholder in your
sql string and keep passing sql and values as two distinct arguments.

The second argument of the execute() method MUST be a tuple (or a
mapping for named parameters, but let's stick to the positional ones).
"(pickled_object)" is not a tuple, it is just an object in
parenthesis. To represent a tuple with a single argument you must
write "(pickled_object,)", notice the trailing comma.

Try:

CSRInsert.execute("insert into testobj (obj) values (%s);",
(pickled_object,))

-- Daniele

May 7 '07 #2
On 7 Mag, 19:08, "krishnakant Mane" <researchb...@gmail.comwrote:
hello,
finally the errors for my sql query have changed so I have even
changed the thread subject because I feel now that this is not doable
in mysql and this seams to be a bug, ither in python or the MySQLdb
module or perhaps both.
And why not also a bug in MySQL? Or a neutrino hitting your CPU
changing a 0 into an 1? Doesn't the Occam razor suggest it may be your
fault? :)
my table is called testobj and the blob field is called obj.
now following is my query with the cursor named CSRInsert.
CSRInsert.execute("insert into testobj (obj) values (?);",(pickled_object))
the error is,
"type error, not all arguments formatted during string formatting ".

can some one now figure out what could be the problem?
Please, read the fine manual.

if you had read the DBAPI documentation as previously suggested, you
would know that you MUST use "%s" placeholder, not "?" (because
MySQLdb.paramstyle == 'format'). Just replace the placeholder in your
sql string and keep passing sql and values as two distinct arguments.

The second argument of the execute() method MUST be a tuple (or a
mapping for named parameters, but let's stick to the positional ones).
"(pickled_object)" is not a tuple, it is just an object in
parenthesis. To represent a tuple with a single argument you must
write "(pickled_object,)", notice the trailing comma.

Try:

CSRInsert.execute("insert into testobj (obj) values (%s);",
(pickled_object,))

-- Daniele

May 7 '07 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

2 posts views Thread by tracy | last post: by
7 posts views Thread by sime | last post: by
3 posts views Thread by hamvil79 | last post: by
7 posts views Thread by Gav | last post: by
4 posts views Thread by David Hirschfield | last post: by
reply views Thread by NPC403 | last post: by
reply views Thread by Teichintx | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.