开发者社区> dituinao技术> 正文

用变量替换表名使用python和mysql连接器

简介: 用变量替换表名使用python和mysql连接器
+关注继续查看

如何解决用变量替换表名使用python和mysql连接器?
显示MysqL连接器的异常是告诉您该表在您的数据库中不存在。

另外,您尝试使用“ MachinePorn”作为参数,但未在查询中定义它,而是将其硬编码为“ subredditName”。

我认为您应该在查询中将数据库定义为另一个参数,它将正常运行:

def dataEntry(subreddit, _title, _post_url, _imageURL):

 cnx = MysqL.connector.connect(**config)
 c = cnx.cursor()
 insert = cnx.escape_string("INSERT INTO MachinePorn (subreddit, title, post_url, imageURL) VALUES (%s, %s, %s, %s)")
 data_value = (subreddit, _title, _post_url, _imageURL)
 c.execute(insert, data_value)
 cnx.commit()
 c.close()
 cnx.close()

dataEntry("fake", "fake", "fake", "fake")
解决方法
我想动态更改插入数据的表的变量名。

这目前有效,

def dataEntry(subreddit,_title,_post_url,_imageURL):

cnx = mysql.connector.connect(**config)
c = cnx.cursor()
insert = ("""INSERT INTO FoodPorn
                (subreddit,title,post_url,imageURL)
                VALUES (%s,%s,%s)""")
data_value = (subreddit,_imageURL)
c.execute(insert,data_value)
cnx.commit()
c.close()
cnx.close()

dataEntry("fake","fake","fake")
但是,当我尝试对表名(在这种情况下为“ FoodPorn”)执行相同操作时,对于动态表(如本例中的MachinePorn),

def dataEntry(subreddit,_imageURL):

cnx = mysql.connector.connect(**config)
c = cnx.cursor()
insert = ("""INSERT INTO subredditName
                (subreddit,%s)""")
data_value = ("MachinePorn",subreddit,"fake")

我得到这个错误,

mysql.connector.errors.ProgrammingError: 1146 (42S02): Table 'sytykr.subredditname' doesn't exist
这使我相信我无法通过这种方式执行操作,因此我想问一下如何执行该操作,以便最终可以在表中传递变量名,而不必每次都对其进行硬编码。

声明:地推任务网所有作品(图片、文字)均由用户自行上传分享,仅供网友学习交流。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
python安装MySQL库引出的一些问题
python安装MySQL库引出的一些问题
13 0
django基于python智能在线考试阅卷系统(源码+系统+mysql数据库+Lw文档)
随着计算机多媒体技术的发展和网络的普及。采用当前流行的B/S模式以及3层架构的设计思想通过Python技术来开发此系统的目的是建立一个配合网络环境的基于python的学校对在线考试阅卷系统的平台,这样可以有效地解决基于python的在线考试阅卷系统混乱的局面。本文首先介绍了基于python的在线考试系统的发展背景与发展现状,然后遵循软件常规开发流程,首先针对系统选取适用的语言和开发平台,根据需求分析制定模块并设计数据库结构,再根据系统总体功能模块的设计绘制系统的功能模块图,流程图以及E-R图。然后,设计框架并根据设计的框架编写代码以实现系统的各个功能模块。最后,对初步完成的系统进行测试,主要是
30 0
python操作mysql
python操作mysql
17 0
Python全栈开发(五)——python数据库MySQL
今天简单说说MySQL,我们存储数据,直接用本地文件即可,但是,本地文件不利于存放海量数据,也不利于用程序对文件的数据进行查询与管理,我们可以使用数据库。
15 0
使用Python解析并“篡改”MySQL的Binlog---发表到爱可生开源社区
MySQL 的 Binlog 记录着 MySQL 数据库的所有变更信息,了解 Binlog 的结构可以帮助我们解析Binlog,甚至对 Binlog 进行一些修改,或者说是“篡改”,例如实现类似于 Oracle 的 flashback 的功能,恢复误删除的记录,把 update 的记录再还原回去等。
22 0
【Python】【MySQL】Python将JSON数据以文本形式存放到MySQL的Text类型字段中
【Python】【MySQL】Python将JSON数据以文本形式存放到MySQL的Text类型字段中
28 0
基于python(Django、Mysql)的超市管理系统的设计与实现
Python语言功能强大,可以运用在诸多方面,其中在Web开发方向也有一系列十分成功的应用,同时为了方便开发,提升开发效率出现了一系列的开发框架,其中 Django 就是一个典型的重量级选手,它帮助我们解决了开发中很多问题,比如模板、数据处理等等,这些使得我们只需要使用 Django 就可以完成大多数的开发任务。 数据库采用MySQL,它是一种关系型数据库管理系统,关系数据库将数据保存在不
55 0
开心档-软件开发入门之Python MySQL - mysql-connector 驱动
MySQL 是最流行的关系型数据库管理系统,如果你不熟悉 MySQL,可以阅读我们的 MySQL 教程。 本章节我们为大家介绍使用 mysql-connector 来连接使用 MySQL, mysql-connector 是 MySQL 官方提供的驱动器。
21 0
Python 连接 MySQL 的几种姿势
Python 连接 MySQL 的几种姿势
44 0
Python 基于Python从mysql表读取千万数据实践
Python 基于Python从mysql表读取千万数据实践
45 0
Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理
Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理
25 0
Python高阶教程——MySQL基础
Python3 MySQL 数据库连接 - PyMySQL 驱动 本文我们为大家介绍 Python3 使用 PyMySQL 连接数据库,并实现简单的增删改查。 PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2 中则使用 mysqldb。 PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。
53 0
Python使用MySQLConnector/Python操作MySQL、MariaDB数据库
Python使用MySQLConnector/Python操作MySQL、MariaDB数据库
40 0
Python:mysql-connector-python模块对MySQL数据库进行增删改查
Python:mysql-connector-python模块对MySQL数据库进行增删改查
42 0
+关注
dituinao技术
文章
问答
视频
相关电子书
更多
高效MySQL的N个习惯
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关镜像