python - 插入mysql数据库不提交更改(python)
问题描述
我正在尝试运行以下代码,该代码执行没有问题。生成的sql是“INSERT INTO account_login (groupone_account_id, login_date) VALUES ('100', '10:10:00') 没有语法错误并成功执行。但是当我检查表时,id没有已插入。我可以成功完成选择查询。
我创建 database_connection 的原因是因为它是一个外部连接,我想隔离它以便能够更轻松地测试数据库连接。
def create_groupone_account_login(groupone_account_id):
groupone_account_login_created = False
cursor = database_connection("cursor")
time = datetime.utcnow().isoformat()[:-3] + 'Z'
sql_create_account_login = "INSERT INTO account_login (groupone_account_id, login_date) VALUES ('%s', '%s')" % (
groupone_account_id, time)
cursor.execute(sql_create_account_login)
connection = database_connection("connection")
connection.commit()
cursor.close()
groupone_account_login_created = True
return groupone_account_login_created
def database_connection(variable):
resp_dict = json.loads(get_secret())
endpoint = resp_dict.get('host')
username = resp_dict.get('username')
password = resp_dict.get('password')
database_name = resp_dict.get('dbname')
port = resp_dict.get('port')
connection = pymysql.connect(host=endpoint, user=username, passwd=password, db=database_name, port=port)
cursor = connection.cursor()
if variable == "connection":
return connection
else:
return cursor
解决方案
推荐阅读
- r - 使用 R,有没有办法通过使用一列数字的向量来查询 sql 文件的行?
- jquery - 如何在运行时禁用 Kendo 工具栏中的项目 KendoUI?
- fabricjs - Fabric.js - 以编程方式相对于中心图像对象转换组对象
- string - 在pyspark中将HEX字符串转换为int的有效方法
- java - 使用具有多个并行流的分叉连接池的有效方法
- javascript - 在 javascript/jquery 中使用 Document.querySelectorAll() 未获得正确的值或元素
- python - 动画没有触发 un jupyter notebook
- node.js - 如何杀死子进程/关闭 Chrome?
- css - 如何选择页面上期望给定元素及其所有后代的所有元素?
- image - Ktor HTML DSL 中的图像标签