, , '?'
MySQLdb ( )
.
cursor.execute("%(param1)s = %(param1)s", {'param1':1})
1=1
mysql
, ( )
:
MyNewCursorModule.py
import MySQLdb.cursors import Cursor
class MyNewCursor(Cursor):
def execute(self, query, args=None):
"""This cursor is able to use '?' as a parameter marker"""
return Cursor.execute(self, query.replace('?', '%s'), args)
def executemany(self, query, args):
...implement...
, , ,
. ;)
:
from MyNewCursorModule import MyNewCursor
conn = MySQLdb.connect(...connection information...
cursorclass=MyNewCursor)
( connection.cursor, , ( ))
... -
( ), ,
:)
Terence Honles