2013-12-14 90 views
1

我倾向于开始远远超出我所能做的项目,坏习惯或强迫自己学习的好方法,我不知道。无论如何,这个项目使用了一个postgresql数据库,python和sqlalchemy。我正在慢慢学习从sql到sqlalchemy和python的所有内容。我已经开始弄清楚模型和声明方法,但是我想知道:从一开始就需要在那里填充数据的最简单方法是什么,比如我的项目的管理员用户?这通常如何完成?Sqlalchemy,python,用数据填充数据库的最简单方法

编辑:

也许这个问题很糟糕。我想知道的是在我的数据库中插入初始数据的可能方法,我尝试使用sqlalchemy并检查每个项目是否存在,如果没有,插入它。如果有大量初始数据,这似乎很乏味,并且不可能成为一种方法。我是一个初学者,有什么更好的学习方式,而不是问定期做这些事的人们他们是如何做到的?也许不适合在stackoverflow上的问题,对不起。

+0

有“最简单”的方式,那么就是“通常完成”的方式。它们不一定相同。最简单的AFAIC是将所有的SQL放到一个SQL脚本中并运行它。但是,当您在项目的整个生命周期中更改项目模式时会发生什么?在那种情况下,有像Alembic这样的工具可以创建迁移。最初这样做有点困难,但是可能会随着时间的推移更容易地演变您的“初始”数据(所以您不必每次更改时都要重写一个脚本)。正如你所看到的,没有“最简单”的方式,因为它依赖于它。 –

回答

0

您可以使用像liquibase这样的模式更改管理工具。通常这用于在源代码控制中保留数据库模式,并应用修补程序来更新模式。

您还可以使用liquibase从CSV文件加载数据。因此,您可以在liquibase中添加一个startup.csv文件,该文件在您首次对数据库运行liquibase时运行。您也可以随时运行它,并将CSV中的数据与数据库合并。

相关问题