python - 在 python 的两个表中插入数据时出错
问题描述
我想使用相同的数据库将数据插入到两个不同的表中,一个是 for 循环,另一个是 for 循环之外,但是在将数据插入一个表后,我得到了错误。
我的代码
with connection ...
for loop ....
sql = "INSERT INTO user_repo (user_id, github_id, repo_id, user_connection, repo_name, contributors, total_commits, commit_by_user, created_date, last_commit) VALUES ( % s, % s, % s, % s, % s, % s, % s, % s, % s, % s)"
cursor.execute(sql, (
initial_details['id'],
username,
all_repo_data[(repo['name'])]['id'] ,
all_repo_data[(repo['name'])]['owner'] ,
all_repo_data[(repo['name'])]['name'],
all_repo_data[(repo['name'])]['contributors'],
all_repo_data[(repo['name'])]['total_commits'],
all_repo_data[(repo['name'])]['commit_by_user'],
all_repo_data[(repo['name'])]['created_at'] ,
all_repo_data[(repo['name'])]['updated_at'],
))
sql = "INSERT INTO initialdetails (github_id, name, email, user_id, location, followers, following,total_commits,total_stars,total_repos) VALUES ( % s, % s, % s, % s, % s, % s, % s, % s, % s, % s)"
cursor.execute(sql, (initial_details['username'],
initial_details['name'],
initial_details['email'],
initial_details['id'],
initial_details['location'],
initial_details['followers'],
initial_details['following'],
Total_commits_of_user,
total_stars,
total_repos,))
connection.commit()
我得到的错误是
Traceback (most recent call last):
File "d:\I8Labs\githubData.py", line 210, in <module>
cursor.execute(sql, (initial_details['username'],
File "C:\Python39\lib\site-packages\pymysql\cursors.py", line 143, in execute
while self.nextset():
File "C:\Python39\lib\site-packages\pymysql\cursors.py", line 96, in nextset
return self._nextset(False)
File "C:\Python39\lib\site-packages\pymysql\cursors.py", line 83, in _nextset
conn = self._get_db()
File "C:\Python39\lib\site-packages\pymysql\cursors.py", line 65, in _get_db
raise err.ProgrammingError("Cursor closed")
pymysql.err.ProgrammingError: Cursor closed
解决方案
推荐阅读
- flutter - 实现流订阅而不是基本查询以在 Firebase 中获取实时 - Flutter
- c# - 如何反序列化包含具有相同父类的不同类类型对象的 JSON 数组
- python - 如何按多个长度分割字符串?
- java - Kafka SSL 握手失败
- google-apps-script - Google Scripts API,即使已启用,也会得到“用户尚未启用 Apps Script API”
- android - Android 操作系统更新后无法再从 FirebaseMessagingService 启动应用
- javascript - 有没有一种简单的方法来跟踪触发比较语句的原因?
- java - 使用构建中引用的外部文件在 Google Cloud 中部署 Spring Boot 应用程序
- docker - 凭证未显示在詹金斯仪表板中
- javascript - 如何解决标记为 [object promise] 的返回