av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python mysql使用executemany()出現TypeError

瀏覽:111日期:2022-08-01 09:27:08

問題描述

def insertData(self,table,param):try: self.db.set_character_set(’utf8’) q= [] for x in param:cols = ’, ’.join(x.keys())values = ’',' ’.join(x.values())q.append((table, cols, ’'’+values+’'’)) sql = 'INSERT INTO %s(%s) VALUES(%s)' try:result = self.cur.executemany(sql,q)insert_id = self.db.insert_id()self.db.commit() except MySQLdb.Error,e:#發生錯誤時回滾self.db.rollback()except MySQLdb.Error,e: print self.getCurrentTime(),'數據庫錯誤,原因%d: %s' % (e.args[0], e.args[1])

其中q的部分內容為[(’houseurl’, ’url’, u’'/ershoufang/szlh11469938.html'’), (’houseurl’, ’url’, u’'/ershoufang/szlh11470634.html'’)]

執行以上代碼后,出現以下問題:

29 sql = 'INSERT INTO %s(%s) VALUES(%s)' 30 try:---> 31 result = self.cur.executemany(sql,q) 32 insert_id = self.db.insert_id() 33 self.db.commit()/usr/lib/python2.7/dist-packages/MySQLdb/cursors.pyc in executemany(self, query, args) 274 self.errorhandler(self, ProgrammingError, msg.args[0]) 275 else:--> 276 self.errorhandler(self, TypeError, msg) 277 except (SystemExit, KeyboardInterrupt): 278 raise/usr/lib/python2.7/dist-packages/MySQLdb/connections.pyc in defaulterrorhandler(***failed resolving arguments***) 34 del connection 35 if isinstance(errorvalue, BaseException):---> 36 raise errorvalue 37 if errorclass is not None: 38 raise errorclass(errorvalue)TypeError: not all arguments converted during string formatting

但是我一條條插入使用execute()就沒問題。

問題解答

回答1:

'INSERT INTO %s(%s) VALUES(%s)'

這種寫法是錯誤的。占位符 %s 只能出現在值的地方,不能作為表名、字段名出現。.execute* 不會幫你處理這些東西。

你可以預先構造好合適的 SQL 模板,再傳給 .execute*。前提是,你的表名、字段名是確定不會有特殊字符的:

fields = ...data = ...sql = ’INSERT INTO {}({}) VALUES(%s)’.format(table, fields)cur.executemany(sql, data)

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 中文字幕亚洲欧美日韩在线不卡 | 精品一区国产 | www视频在线观看 | 亚洲欧美日韩国产综合 | 99精品视频免费观看 | 国产精品有限公司 | 欧美精品成人 | 国产一区不卡 | 91就要激情| 欧美激情一区二区三级高清视频 | 久久i | 国产视频二区 | 亚洲精品av在线 | 一区二区三区在线播放 | 亚洲一区中文字幕在线观看 | 日本a∨精品中文字幕在线 亚洲91视频 | 午夜影院操 | 日韩一级免费观看 | 国产欧美日韩一区 | 免费在线精品视频 | 国产精品一区二区视频 | 日韩在线视频一区 | 精品国产乱码久久久久久图片 | 天天操人人干 | 亚洲综合一区二区三区 | 电影91久久久 | 在线观看欧美一区 | 亚洲成人精品 | 久久中文字幕一区 | 欧美一区二区三区久久精品 | 亚洲欧美精品在线 | 81精品国产乱码久久久久久 | 亚洲精品中文字幕在线观看 | 欧美一区二区三区四区五区无卡码 | 国产精品视频免费观看 | 亚洲色视频 | 日本成人中文字幕 | 亚洲vs天堂 | 天天夜碰日日摸日日澡 | 97超碰站| 青青久在线视频 |