跳到主要内容

代码生成

切换到工具栏的 Code Generator 标签页,然后在代码区域右键打开菜单。
菜单中提供 LanguageTable Name CaseColumn Name Case

代码生成菜单

同一个面板也是表属性Code Generator 标签页,在那里生成的是这一张表的代码,而不是整个文档的代码。
在此标签页打开期间,这三个菜单也可以从快速搜索中使用。

语言

支持十四种目标,按语言、ORM、Schema DSL 三个分组依次列出,每个分组内按字母顺序排列:

目标分组关系索引
C#语言
Go语言
Java语言
Kotlin语言
Scala语言
TypeScript语言
DrizzleORM
JPAORM
SequelizeORM
SQLAlchemyORM
TypeORMORM
AMLSchema DSL
DBMLSchema DSL
GraphQLSchema DSL

默认值为 GraphQL。所有目标都会生成列,✓ 标记表示除此之外还会生成什么。
表按名称顺序生成,而不是按其在画布上的摆放顺序,索引则使用表属性中定义的索引。

AMLDBMLGraphQL 都是可往返的格式,它们同时也是导入来源。参见导入与导出文件

名称大小写

Table Name CaseColumn Name Case 均支持 PascalCamelSnakeNone
默认值为表名 Pascal、列名 CamelNone 会按图中书写的名称原样生成。

AMLDBML 会忽略这两项设置,始终按图中的名称原样生成。

数据库

数据类型根据所选的数据库解析,因此在切换到此标签页之前先选择数据库。参见数据库
Drizzle 会根据同一项设置决定方言:PostgreSQL 为 pgTable,MySQL 和 MariaDB 为 mysqlTable,SQLite 为 sqliteTable,其他数据库均为 pgTable

AMLDBML 是例外,它们会按图中书写的内容原样生成每个数据类型,因此数据库设置不会改变其输出。

复制结果

生成的代码没有文件导出功能,因此需要从面板中复制。
将鼠标悬停在面板上,点击右上角的复制按钮,会显示 Copied! 提示。文本也可以直接选中,因此可以只取需要的部分。