flask无法创建数据库

今天实操flask连接mysql的,就短短几行代码,弄得头都大,大概没有打代码的天赋吧~~~~~

 

flask无法创建数据库_第1张图片

当我定义完这个模型类,跑程序

错误一:TypeError: column() got an unexpected keyword argument 'primary_key'

主键问题,于是我试着先把主键删掉,再跑程序又出现了

错误二:sqlalchemy.exc.ArgumentError: Mapper mapped class Author->author could not assemble any primary key columns for mapped table 'author'

我一直认为是mysql的包没安装对,又重新安装了一遍,结果还是不行,最后才发现自己太笨太笨了,columm中的C要大写

flask无法创建数据库_第2张图片 (注意大写)

一个大小写问题,就有一堆错,一定要细心细心细心!!!!

 

改完这个程序,我继续跑代码,好了,很开心,这次程序终于没报错。 当我查看数据库时,发现author表并未创建。程序未报错,为啥创建不成功author表呢? 因为程序不报错,毫无目的,一直百度一直百度,始终解决不了问题。最后一点一点试发现问题出在db.create_all()

flask无法创建数据库_第3张图片

db.create_all()不可以放在 if __name__ == '__main__'中,把它放在外面,结果发现数据库创建成功。

flask无法创建数据库_第4张图片

看了网络视频教程以及文章,发现都是将db.create_all()放在 if __name__ == '__main__'中,也不清楚为什么人家的可以,我的却不行,大概因为版本问题吧? 啊啊啊啊啊啊要疯掉了。

一个简单的链接数据库,花了三四个小时啊啊啊啊啊啊啊啊啊

你可能感兴趣的:(flask)