python - SQlite - 为什么我需要提交命令
问题描述
我使用 python(我的 IDE 是 pycharm)并且是 SQlite 的新手。我读到我必须使用提交来保存数据或更改,否则这些都不会保存到表中。我使用一个简单的代码在数据库中创建一个表,而不使用提交,定义标题并关闭数据库文件。然后使用 DB_Browser 打开文件并查看它是否已更新为我刚刚制作的内容。那么我的问题是为什么我需要提交命令?
import sqlite3
from sqlite3 import Error
# Connecting SQLite to the Database
def create_connection(db_file):
""" create a database connection to a SQLite database """
try:
# Creates or opens a file called mydb with a SQLite3 DB
db = sqlite3.connect(db_file)
# Get a cursor object
cursor = db.cursor()
# Check if table users does not exist and create it
cursor.execute('''CREATE TABLE IF NOT EXISTS
users(id INTEGER PRIMARY KEY, name TEXT, phone TEXT, email TEXT unique, password TEXT)''')
except Error as e:
# Roll back any change if something goes wrong
db.rollback()
raise e
finally:
# Close the db connection
db.close()
fname = "mydb.db"
create_connection(fname)
解决方案
推荐阅读
- c++ - 模型上的 QT 无限视图
- python - 我想查找数据框。如果值存在于另一个 df 中,请保持相同的值,否则将 #N/A 放入 pandas python
- security - 如何拒绝授权用户访问注册页面?Symfony 5
- ios - 在 [NuxtJS 电容器 vue] 应用程序中设置深度链接
- chromium - 如何在桌面应用安装中跟踪谷歌广告转化
- javascript - 为什么我的跨度在滚动时不改变颜色
- postgresql - 为什么 Kubernetes 服务外部名称无法在 Internet 上访问?
- azure - Azure APIM 中的 JWT 验证失败
- java - 我们如何模拟 OutOfMemory: Metaspace?
- pine-script - 避免连续的买入和卖出信号(我检查了所有以前避免 AA 和 BB 相关的问题,但无法解决我的问题)