sqlalchemy新手,用下面的初始化数据库代码,单独运行后,数据表并没有初始化(要ORM映射的类写在model中)。
``` python
database = "mysql://%s:%s@%s/%s" %(DBUSER,DBPASSWD,DBHOST,DBNAME)
mysql_engine = sqlalchemy.create_engine(database,echo=True)
mBase = sqlalchemy.ext.declarative.declarative_base()
def initialize_db():
import model
try:
mBase.metadata.create_all(mysql_engine)
except OperationalError, err:
print("Error %s" % str(err))
print("Data Base Completed")
初始化数据库
initialize_db()
```
但如果在主程序(启动webserver的py文件中)中调用initialize_db,数据表就会根据ORM的类创建成功。
不明白这是为什么,问题出在哪里?