我喜欢OOP,很快我就了解到SQLAlchemy是非常感兴趣的。虽然我是新手,但对于初学者来说,即使在导入主模块之后,也必须显式地导入每个模块,我的意思是sqlalchemy。
我使用这个脚本来创建一个新的数据库文件,并在同名数据库已经存在时提醒我,但与直接在sqlite3上工作不同的是,我遇到了错误。
import os
import sqlalchemy
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
def CreateDB(dbName=None):
dbName = 'ABC-DB' # should be the name of the new database file
db = create_engine('sqlite:///dbName', echo=False) # should be a link from above
Base.metadata.create_all(db)
if os.path.isfile(dbName): # should check for existence
print('DataBase already exist') # should alert on existence.我得到'dbName‘而不是'ABC-DB’。os.path...是一个死脚本,因为它什么都不做。
谁来帮帮忙。
发布于 2011-05-13 04:50:10
正确,它完全按照你说的做了:
db = create_engine('sqlite:///dbName', echo=False) # should be a link from above您需要:
db = create_engine('sqlite:///' + dbName, echo=False) # should be a link from abovehttps://stackoverflow.com/questions/5984265
复制相似问题