Erwin sql脚本反向建模,中英文映射model

首先写在最前面的,我只想说Erwin反向工程真是难用。或者是我没有搜到简单的方法吧。总之,希望下面介绍的可以减少点你的工作量。

前言:一般来说Logical model显示中文,Physical显示英文。你可以想成,Logical model是逻辑实体,也就是字段中文评论备注,Physical model就相当于数据库字段映射。

具体操作如下:

1、生成数据库表创建脚本。这个就不多说了,navicat会用的话很简单:

2、处理脚本:首先我试过,通过Erwin,用script反向工程生成model的话,如果导出来的创建脚本包含如下情况就会失败:

  • 字段被`标记,如:`id`;
  • 字段带Comment;
  • 脚本带index;
  • 脚本带类似这样的语句:CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
  • 脚本带类似这样的语句:ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = 'demo表' ROW_FORMAT = Dynamic;

有带上面这些的,别问,把相关的删了就是了。字段被`标记的,把`改成双引号就行。别问我为什么知道这些不行,因为你逆向工程的时候会报错。

3、Erwin开启来,选择Tool->Reverse Engineer

然后选Physical。别选Logical/Physical。如下

然后在新弹窗中选Script,选之前处理好的sql脚本:

之后,next,不报错就会生成Physical的model了。

4、生成的model先别动,点击Erwin左上角create model按钮。新建一个Local/Physical的model

5、将原来创建的那个Physical的model的表复制,然后粘贴到新的这个Local/Physical的model里面。你就会发现,切换到Local的视图时,修改字段为中文,不会影响到Physical的因为字段显示了。

看到这里可能你会觉得怎么还是要自己写中文,没办法,要不然我怎么说这玩意难用呢?或者你有其他更好的办法麻烦告诉我。就这样了。

关注公众号获取更多内容,有问题也可在公众号提问哦:

 

强哥叨逼叨

叨逼叨编程、互联网的见解和新鲜事

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章