gpt4 book ai didi

python - sqlalchemy create_engine() 如果数据库已经存在

转载 作者:太空宇宙 更新时间:2023-11-03 11:32:09 25 4
gpt4 key购买 nike

from pox.core import core
import pox.openflow.libopenflow_01 as of
import re
import datetime

from sqlalchemy import create_engine, ForeignKey
from sqlalchemy import Column, Date, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relationship, backref
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker


log = core.getLogger()



engine = create_engine('sqlite:///nwtopology.db', echo=False)
Base = declarative_base()
Session = sessionmaker(bind=engine)
session = Session()

如果我通过重新启动程序重复调用最后四个 python 语句,是否会对数据库的正常运行产生负面影响?如果数据库已经存在,它会重新创建数据库吗?

最佳答案

正如 sberry 所写 - 调用 create_engine 并通过重新运行同一脚本多次创建 session 将只打开连接并创建引用此连接的 SQLAlchemy 引擎对象。因此这样做不会创建新的 sqlite 数据库文件,也不会影响数据库功能。

此外,我建议确保您的代码始终在脚本末尾执行 session.close()。这将确保所有更改(如果有)都将提交到数据库。我所说的更改是指您的脚本可能对数据库进行的任何更新/插入。

关于python - sqlalchemy create_engine() 如果数据库已经存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16330801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com