2
由於某種原因,每當我在db遊標上運行查詢時,它在.messages列表中會生成兩個錯誤,這是一個特性嗎?python mysqldb遊標消息列表顯示錯誤兩次
這裏是運行查詢的代碼,所有的應用程序是開放的數據庫連接,一旦與強制錯誤或許運行此,請閱讀.messages,然後退出
import MySQLdb
class dbobject:
def __init__(self, dbhost, dbuser, dbpass, dbname):
self.connection = MySQLdb.connect(user=dbuser, passwd=dbpass, host=dbhost, db=dbname)
self.cursor = self.connection.cursor()
def try_query(self, query, args=()):
""" attempts to run a query, where
query is the query to be run, with '%s' statements where the values should be, and
args is a tuple of the values to go with the query"""
try:
if args ==():
self.cursor.execute(query)
else:
self.cursor.execute(query, args)
self.connection.commit()
except:
self.connection.rollback()
def add_unit(self, name, version, credits):
""" takes name, version, credits
name is the name of the unit paper
version is the unit version, and
credits is how many credits its worth"""
self.try_query("insert into dsfdf tbl_unit (unit_name, unit_version, unit_credits) values (%s,%s,%s)",(name,version,credits))
def close(self):
self.cursor.close()
self.connection.close()
blah = dbobject(#####################)
blah.add_unit("thing", "something", 6)
for i in blah.cursor.messages:
print i
blah.close()
謝謝,最終被試圖讓不正確的查詢錯誤日誌,並且使用異常中的信息代替,應該早一點想到 – biokiwi 2010-07-24 06:25:20