EZDML 数据建模

超轻量级的免费数据建模工具

0%

EZDML自带了一个SQL查询工具,当然它比较简单,不能代替我们常用的开发工具,但在救急时也能当个临时工,同时它跟模型结合来做一些数据查询操作也非常方便。接下来我们以之前导入过的MES模型为例简单介绍一下。

阅读全文 »

EZDML之前支持批量导出到Excel,最近EZDML又增加了批量导入Excel的功能,这里简单说明一下。

批量导入Excel

这里所谓批量,就是一次能导入多个表的意思。大概要求格式是:表名独占一行,注释(可选)占一行,列头占一行,然后是字段属性内容(一行一个字段,注释可多行),每个表之间至少有一行空行。

新版EZDML在模型菜单下增加了“导入Excel…”命令:

阅读全文 »

理论上EZDML可以通过JDBC连接所有数据库,之前有网友跟我说EZDML通过JDBC连接hive有问题,我自己不玩数据仓库,对hive不熟,不过我想正常来说都是JDBC封装了,不应该啊。因此这几天我就亲自试验了一下,看看到底是什么情况。过程中发现要修改JDBC和EZDML代码,因此也记录一下相关的处理过程供参考。

阅读全文 »

从已有数据库导入数据表模型进行分析,又称逆向工程,可以说是大家最常用到的功能之一了。导入数据库是所有的建模工具都具备的标准功能,其实没什么好说的,没必要专门写一篇;不过EZDML在导入后进行各种补充、分析这方面有值得一提的地方。最近研究了一下章鱼师兄的MES(生产制造管理系统),本文就以此项目为例,从零开始用EZDML导入数据库,并进行相应的分析处理。

阅读全文 »

概述

EZDML新版(3.45起)支持将模型文件保存到数据库,只要能访问数据库就可以随时加载模型,并且能在保存更改后实时通知其他用户更新,实现模型文件的共享和简单协作。

EZDML会在数据库中创建一个表来保存文件,这个表会在首次保存数据库文件时提示用户创建。

EZDML在保存数据库文件时,会保留历史文件记录,可以随时加载历史文件,实现一定的版本管理功能。

下面我们从头开始一步一步说明如何使用数据库文件功能。

连接数据库

打开自带demo文件(D:\EZDML\demo_ch.dmj),执行菜单命令“文件|保存到数据库”(或按住SHIFT键点工具栏上的保存按钮):

阅读全文 »

PowerDesigner是数据建模的老大,已经在用PD的用户一般是不需要转到EZDML来的,我们也不建议用户转过来。但如果是接手已经有PowerDesigner的物理模型,或其它原因(如国产化、授权问题、功能特性等)需要转到EZDML,可以通过PDM文件导入。

下面举个例子导入一个PDM,并顺便作一些简单的分析和生成演示。

打开PowerDesigner模型

启动PowerDesigner,在欢迎页打开示例Examples:

阅读全文 »

Erupt是一个基于Spring boot注解的java框架,只需要写个实体类就能自动生成增删改查的基本功能,又可以自定义代码实现复杂逻辑,设计精巧功能强大得来又很灵活。我在生成Erupt过程中有时会想其实我也很久就想弄个类似的框架,可惜也就只是个想。

EZDML已经提供了生成Erupt工程代码的模板,按惯例在这里简单复盘一下我是如何实现这个生成过程的,仅供希望自己自定义控制Erupt生成过程的人参考。

Erupt官方文档推荐用Spring Initializer,我们就按这个方式开始,重头来一次。

阅读全文 »

上一篇讲了用EZDML生成vue-element-admin前端,这回来试下折腾下后端接口的生成。还是分两步走,先人工做单个表的模板工程,再转成批量自动生成。

本文图多内容枯燥,仅适合想自己用EZDML生成框架的后端java程序员参考,其他人员请慎入。

运行环境:JDK8,idea64,EZDML for win64 v3.27。

还是从零开始吧,新建项目,从start.spring.io创建,打开浏览器:

选择了Lombok、JPA、H2作为附加依赖,生成项目文件下载解压:

阅读全文 »

EZDML 3.26起增加了vue-element-admin示例生成模板,本文就以它来讲解示范,如何从零开始用EZDML批量生成代码。

先说下,本文非常的长,内容非常的枯燥,仅适合想自己用EZDML生成框架的前端程序员,其他同学没必要浪费时间围观。

本文大概分两部分,前半部分探索以人肉方式生成一个表的结果,后半部分是把人工单个的操作结果转成批量自动。本人较少写文章,字少,图多,有时比较啰嗦,大家多包涵。

EZDML具有强大的脚本模板引擎功能,支持pascal和javascript脚本。EZDML新版默认就已经能生成vue-element-admin模板了,不过为了方便理解,我们在这里要假装还没有这个功能。

阅读全文 »

数据类型大概是大家上手EZDML后面临的一个较大的困惑,因为EZDML并没有直接提供大家熟悉的数据库类型,而是只提供了一些逻辑数据类型:

  • String——文本
  • Integer——整数
  • Float——浮点数
  • Date——时间
  • Bool——真假
  • Enum——枚举
  • Blob——文件
  • Object——对象
  • Calculate——计算
  • List——列表
  • Function——方法(函数)
  • Event——事件

可能前面几个还勉强能理解,后面那几个是什么鬼?

阅读全文 »

EZDML这几个字是什么意思

EZDML是一款国产免费的轻量级数据建模工具,具有轻巧、快速、简便而功能强大的特点,可轻松地进行数据库表结构设计,建立界面数据模型,支持通过自定义脚本模板生成测试数据、界面原型和前后端代码文件。

EZDML即EzDML,是Easy Data Model Language的意思,官方读法是“一贼滴嗯嗷”(easy-D-M-L),原先也叫表结构设计器。大概是因为有段时间UML(统一模型语言)很火,然后我觉得描述字也勉强算是一种简易的“语言”,于是取名DML,并加上easy前缀。

如何快速上手

参见《EZDML快速上手》。

有绿色版吗

没有专门做绿色版,不过可以自己做,把安装后的文件拷出来就是绿色版了。

Windows下32位64位该用哪个版本

64位吧,跟上潮流。32位只适合少部分老用户。

为什么字段的数据类型那么少

本工具以简单设计为主,所以把常用的数据类型归纳为以下几种了:文本、整数、浮点数、时间、真假、枚举、文件、对象。比如字符串VARCHAR、VARCHAR2、NVARCHAR、CLOB(长度超过数据库限制时会自动转用CLOB),在我看来都是一个类型,只是换了个马甲而已。这样做的好处,主要是跟编写代码比较接近,另一个是跨数据库时比较方便。

阅读全文 »

EZDML是一款国产免费的轻量级数据建模工具,具有轻巧、快速、简便而功能强大的特点,可轻松地进行数据库表结构设计,建立界面数据模型,支持通过自定义脚本模板生成测试数据、界面原型和前后端代码文件。

更新记录(截图里新旧版本共存请谅解):
2009.11 表结构设计器EZDML1.5新版本发布,比以前改进了很多,因此重新写了个介绍。
2015.10 已经更新到2.06版本,决定再次整理重写此文档。
2019.10 已经2.32版了,再把文档改改吧。
2022.05 五一广州疫情出不去就再更新了一下,现在版本是3.36。

下载安装

这一点没什么可说的,就是下载并运行安装程序,按照向导一步步走完。

阅读全文 »

HTTP连接扩展

简单讲一下HTTP连接扩展。

上一篇说到,JDBC连接其实是通过HTTP协议连通JAVA和EZDML的,这里其实对EZDML来说JDBC就是一个HTTP服务。

但HTTP服务并不只限于JDBC,只要符合请求规范,任何HTTP服务都可以。如有必要,你可以用你熟悉的语言来开发HTTP服务,java springboot、php、python、C/C++、c# ASP.NET、NodeJS、Go、Ruby、VB…只要实现几个json请求就可以。

HTTP连接

EZDML支持http或https连接,且HTTP服务并不需要部署在本机,你可以部署在服务器上,这样其他EZDML用户不需要安装任何驱动就可以访问了(当然安全性问题要自行保证)。

阅读全文 »

JDBC

JDBC是万金油终极解决方案。如果其它驱动连不上,那JDBC一定是可以的。

当然,JDBC配置起来稍麻烦,不熟悉JAVA的同学会稍为有点头大;非程序员建议在程序员的陪同下进行;不过JAVA这么流行,再看下本文填下坑,相信基本上都能跑起来。

JDBC连接

在连接数据库时,连接类型上选择“HTTP_JDBC”,就是JDBC的连接方式了。

阅读全文 »

ODBC

ODBC主要是在Windows下了,Linux和MacOS理论上也能用ODBC,但比较复杂难用,我也没有试过。

以EZDML for win64为例,选择ODBC后,数据源可以有几种格式:

  • 用户DSN名称
  • 系统DSN名称
  • 文件DSN名
  • ODBC驱动连接描述符

ODBC连接数据源

下面我们举例说明。

阅读全文 »

SQL Server

本文主要讲SQL Server。EZDML的所有平台版本安装包都自带了SQL Server的驱动,理论上啥也不需要折腾直接就能连SQL Server;不过实际上可能还是会有一些问题;另外在Windows下,你可以改用系统ODBC驱动来连接SQL Server,我们也演示一下具体如何操作。

这是我测试用的SQL Server数据库,实例名为SQLEXPRESS,数据库为htest:

SQL管理器

阅读全文 »

ORACLE

本文主要讲ORACLE(顺便讲下达梦),毕竟是数据库老大,比较复杂,我用ORACLE的时间也较长,会稍啰嗦几句。

连接ORACLE时,数据源格式为:数据库服务IP:端口/SID,如:127.0.0.1:1521/ORCL。点配置按钮可以弹出配置界面:

ORACLE连接配置

阅读全文 »

EZDML在导入数据库、生成数据库、执行SQL时,会弹出数据库连接对话框。

连接数据库

EZDML支持ORACLE、SQL Server、MySQL、SQLite、PostgreSQL、达梦、人大金仓等数据库,我们将分别对每种数据库的连接,从零开始一步一步进行详细说明。

阅读全文 »

上一篇说了常规功能(参见《EZDML常规功能》),这篇接着说特色功能。

特色功能就是我有别人没有的,或者一开始只较少人有(嗯,功能好用的话,迟早会被别人抄过去的,我也经常抄人家的)。下面开始表演。

物理+逻辑视图

就是同时显示物理名称和逻辑名称。

记得以前用其它建模工具时,我就很希望有这么个功能,因为我英文不好,非常需要同时看到中文。十几年前的建模工具几乎都是英文版,老外是不需要这功能的(因为他们英文好啊)。然后自己来写EZDML了,差不多就第一时间把这个功能加上了。

物理+逻辑视图

中英文直接对照,感觉好多了。

阅读全文 »

简单说下常规功能,常规功能就是我有多半别人也有的,或者说是个数据建模工具都会有的。

建表

右键“新建表”就可以弹出新增表对象界面,添加输入内容确定保存即可完成创建表:

新建表

虽然推荐大家用描述字建表,但传统方式的建表仍然是要有的。

阅读全文 »

总结下EZDML有哪些特点:

直观

——所有设计都围绕模型图展开

模型图

上来就是模型图,来去都是表和关系,没有别的套路。

超轻量

——只需要一个可执行文件就可以运行。

阅读全文 »

今天把博客跑起来了。之前试过word-press,觉得太复杂,又php又mysql的;这几天看了下hexo,纯静态绿色环保,感觉对眼,整起~

简介

EZDML是一款国产免费的轻量级数据建模工具,具有轻巧、快速、简便而功能强大的特点,可轻松地进行数据库表结构设计,建立界面数据模型,支持通过自定义脚本模板生成测试数据、界面原型和前后端代码文件。

EZDML for win64

阅读全文 »