一个假的sql数据库生成器包
sqlfaker的Python项目详细描述
使用sqlfaker
创建数据结构
sqlfaker
是一个python库,可用于生成关系数据结构并用伪数据填充这些结构。在
安装
sqlfaker
可以通过来自pypi.org的pip安装。只需在终端或命令提示符下运行以下命令。在
pip install sqlfaker
阶级结构
此项目允许您定义建立在Database
、Table
和{
一个Database
可以有多个Table
对象,每个对象又可以有多个Column
对象。有两个类继承自Column
类-ForeignKey
和{
使用示例
sqlfaker
可用于生成新数据库。到目前为止,Database
类只支持MySQL/MariaDB语法(当涉及到SQL导出时)。新的数据库类型将随着时间的推移而实现。在
sqlfaker
也可用于指定表的架构。这由三种方法支持:add_primary_key
,add_column
和{
The order of column creation must follow consider their interdependencies (much like in SQL). If you e.g. create a foreign key column, you need to create the referenced primary key column first.
# add columns to studyprogram tablemy_db.tables["studyprogram"].add_primary_key(column_name="studyprogram_id")my_db.tables["studyprogram"].add_column(column_name="shortname",data_type="varchar(50)",data_target="name")my_db.tables["studyprogram"].add_column(column_name="startdate",data_type="date",data_target="date")# add columns to student tablemy_db.tables["student"].add_primary_key(column_name="student_id")my_db.tables["student"].add_column(column_name="firstname",data_type="varchar(50)",data_target="first_name")my_db.tables["student"].add_column(column_name="lastname",data_type="varchar(50)",data_target="last_name")my_db.tables["student"].add_foreign_key(column_name="studiengang_id",target_table="studiengang",target_column="studiengang_id")
一旦定义了数据库结构,就可以使用sqlfaker
生成数据,然后将完整(或部分)sql脚本导出到磁盘。所有生成的SQL脚本的语法都遵循MySQL/MariaDB。在
data_target
is used to specify the type of fake data that is generated to fill the respective column.sqlfaker
uses Pythonfaker
for fake data generation. You can therefore reference allfaker
data types asdata target
. Seefaker
's documentation for more details.
my_db.generate_data()my_db.export_sql("test.sql")
- 项目
标签: