如何在python中将二维数组添加到数据库中
Posted
技术标签:
【中文标题】如何在python中将二维数组添加到数据库中【英文标题】:How to add a 2d array to a database in python 【发布时间】:2019-08-05 12:23:51 【问题描述】:我正在尝试将值列表添加到数据库中的表中
QuestionAnswer = [['x','y','z'],['x','y','z']]
(cursor.executemany('INSERT question (QuizID,question,answer) VALUES (%s,%s,%s)',QuestionAnswer)
db.commit()
错误如下:
Traceback(最近一次调用最后一次):文件“C:\Users\georgia vost\AppData\Local\Programs\Python\Python37-32\lib\tkinter__init__.py", 第 1705 行,在 调用 返回 self.func(*args) 文件“C:\Users\georgia vost\Documents\Private Document\NEA WORK\Code 文件夹\appJar\appjar.py",第 3494 行,在 返回 lambda *args: funcName(param) File "C:\Users\georgia vost\Documents\Private Document\NEA WORK\Code Folder\prastice program 1.py",第 37 行,印刷中 cursor.executemany('INSERT question (QuizID,question,answer) VALUES (%s,%s,%s)',QuestionAnswer) File "C:\Users\georgia vost\AppData\Local\Programs\Python\Python37-32\lib\site-packages\mysql\connector\cursor.py", 第 675 行,在 executemany 中 self.execute(操作,参数)文件“C:\Users\georgia vost\AppData\Local\Programs\Python\Python37-32\lib\site-packages\mysql\connector\cursor.py”, 第 557 行,执行中 psub = _ParamSubstitutor(self._process_params(params)) 文件“C:\Users\georgia vost\AppData\Local\Programs\Python\Python37-32\lib\site-packages\mysql\connector\cursor.py", 第 437 行,在 _process_params “处理格式参数失败;%s”% err) mysql.connector.errors.ProgrammingError: 处理失败 格式参数; Python 'method' 无法转换为 MySQL 类型
【问题讨论】:
【参考方案1】:现有代码中可能需要进行许多更改,包括查询语法
cursor.executemany('INSERT INTO question (QuizID,question,answer) VALUES (?,?,?)',list(map(tuple,QuestionAnswer)))
【讨论】:
以上是关于如何在python中将二维数组添加到数据库中的主要内容,如果未能解决你的问题,请参考以下文章