LINUX.ORG.RU

python - MySQLdb.connect.cursor


0

0

черт, отфомартировать забыл =(

собсвенно вопрос - для примера следуйший код
(1)_db = MySQLdb.connect(host = host,db = db,user = user,passwd = passwd)
(2)c = _db.cursor()
(3)c.execute('select `lid` from links_native')
(4)id = c.fetchone()
(5)c.execute('select `fname` from links_native')
(6)fname = c.fetchone()
(7)c.close()
примере несколько натянут, вобшем нужно ли что-то делать после строки 4, ну те запрос предыдуший выдает больше одной записи, негде память не потечет в данном коде?


а так?)
anonymous

блин, еше и написал нетуда.

anonymous
()
Ответ на: комментарий от Pi

я бы сказал что 4тыре. вобшем ктонить ченить вразумительное скажет?)
еше возник вопрос - нафига MySQLdb.escape перестал работать? или я как-то нетак его юзаю?
>>> db = MySQLdb.connect(host = host,db = db,user = user,passwd = passwd)
>>> db.escape('бла bla строка с чушью')
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
TypeError: no default type converter defined
раньше работало... гуглил, нагуглил пост в майлистинге в питон.орг, тока нифига в ответ на вопрос не сказали. питон 2.4.3, MySQLdb 1.2.1_p2

anonymous
()
Ответ на: комментарий от anonymous

нашол патч, все работает после него:
Index: MySQLdb/connections.py
===================================================================
--- MySQLdb/connections.py      (revision 503)
+++ MySQLdb/connections.py      (working copy)
@@ -140,11 +140,10 @@
 
         conv2 = {}
         for k, v in conv.items():
-            if isinstance(k, int):
-                if isinstance(v, list):
-                    conv2[k] = v[:]
-                else:
-                    conv2[k] = v
+            if isinstance(k, int) and isinstance(v, list):
+                conv2[k] = v[:]
+            else:
+                conv2[k] = v
         kwargs2['conv'] = conv2
 
         self.cursorclass = kwargs2.pop('cursorclass', self.default_cursor)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.