EZDML常见问题

——本文最后修订日期:20191109,对应EZDML版本:2.35。

文档更新记录:

2009.11 表结构设计器EZDML1.5新版本发布,比以前改进了很多,因此重新写了个介绍。

2015.10 已经更新到2.06版本,决定再次整理重写此文档。

2019.10 到2.32版了,再把文档改改吧。

目录

一、 EZDML是什么东东?

二、 有那么多的现成的工具,为什么还要搞这个EZDML?

三、 EZDML有什么特点?

四、 如何快速上手?

五、 EZDML的描述字是什么来的?有什么用?

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

七、 默认的物理类型(如VARCHAR2)不是我要的怎么办?

八、 除了默认类型,我还需要其它的数据类型怎么办?

九、 外键连接只有一对多吗?有没有一对一的?

十、 在模型图中新建或复制粘贴表后,新表的位置是怎么定的?

十一、 是否支持多字段的组合索引、组合外键、组合主键、触发器等约束?

十二、 同名表有什么讲究?为什么有时会警告相同名称的表对象已经存在?

十三、 如何快速复制表名/字段名?

十四、 如何复制的方式创建新表?

十五、 如何复制字段到另一个表?

十六、 字段属性里的“编辑器界面”、“业务逻辑”是干什么用的?

十七、 为什么你的表和字段属性截图有个“自定义”标签?

十八、 那个大小写转换是干什么用的?

十九、 那下面还有个汉字转拼音是干什么用的?

二十、 如何从注释中提取逻辑名?

二十一、 如何对多个表批量添加或删除字段?

二十二、 如何对多个表或字段批量转换大小写?

二十三、 如何对多个表或字段批量进行某种操作?

二十四、 PASCAL和JAVASCRIPT脚本有什么用?如何编写脚本?

二十五、 为什么有时输入的中文内容是乱码?

二十六、 文字对象有什么用?

二十七、 重新排列那个是有什么原理?

二十八、 缩略图模式有什么用?

二十九、 模型图中表的背景颜色是怎么设置出来的?

三十、 如何快速查找表或字段?

三十一、 那个CTRL+F查找对象又有什么用?

三十二、 连不上ORACLE怎么办?

三十三、 还是连不上数据库怎么办?或者其它类型的数据库连不上怎么办?

三十四、 生成的SQL我有一点不喜欢,想小改一下,该怎么办?

三十五、 如何将DML文件与旧版本比较?

三十六、 临时文件是干什么用的?

三十七、 EZDML有DMH、DMX、DMJ三种文件保存格式,用哪一种比较好?

三十八、 如果想重新加载原始的文件,不想用临时文件要怎么操作?

三十九、 EZDML有哪些配置文件?如何设置这些配置?

四十、 程序支持哪些命令行参数?

四十一、 如何复制或导出模型图像?

四十二、 导出WORD文档格式我不喜欢,能改不?

四十三、 导出的EXCEL格式我也想改,要怎么弄?

四十四、 如何配置外部工具?

四十五、 字符编码工具是做啥用的?

四十六、 EZDML能导入其它工具(如PowerDesigner)的文件吗?

四十七、 EZDML收费吗?需要捐助吗?

四十八、 EZDML是用什么开发的?

四十九、 EZDML会开源吗?会有MAC版吗?

五十、 还有其它的问题怎么办?

一、 EZDML是什么东东?

EZDML是一个数据库建表的小软件,可快速的进行数据库表结构设计,建立数据模型。类似大家常用的数据库建模工具如PowerDesigner、ERWIN、ER-Studio和Rational-Rose等的超级精简版。

二、 有那么多的现成的工具,为什么还要搞这个EZDML?

这个。。。也许当时没有现在那么多,没找到喜欢的,也许是嫌PowerDesigner太慢太复杂了,也许是某天无聊想自己写点东西练练手,时间太久,不太记得了,反正年轻时看别人写的程序都有点不顺眼。要搁现在,我可能就不会再做这种重新发明轮子的事了。

如果你正在找类似的工具,不妨试一下EZDML。如果你的项目组已经用开了其它的工具,且用得很好,那可以看看,但没有必要冒险作出转变。

三、 EZDML有什么特点?

有两大特点:

1.         简单。程序本身就很简单,它只需要一个exe就可以运行,通过编辑描述字也能很快创建或修改表结构。

2.         脚本。支持JAVASCRIPT、PASCAL脚本,你就可以完全控制所有表、字段,想删想改想生成什么都是可以的。

3.         免费——不好意思,这第3点后来想起加的。

有人可能要说,你这小Q&A破文档都写了几十页,你还好意思说简单?嗯,确实,你有点问倒我了。我一开始也没想到有这么多问题,不过,其实不看文档也基本能用得起来的。简单只是相对的,如果有别的工具比我这个更简单,我就……我就去抄它的。

四、 如何快速上手?

说来话长,参见官网《EZDML快速上手》。

五、 EZDML的描述字是什么来的?有什么用?

这个强烈安利大家使用。它就是一段用来描述一个表的总体结构的文本,内容很简单,简单到一看就懂。示例如下:

userInfo(用户信息)
-----------------------------------------
id(ID)                       PKInteger   //<<关联:users.id>>
name(姓名)                   String(255)
username(用户名)             String(255) //<<唯一索引,非空>>
encodedPassword(加密密码)    String(255) //<<非空>>
email(E-mail)                String(255) //<<唯一索引,非空>>
createDate(创建日期)         Date        //<<非空>>
modifyDate(最后修改日期)     Date        //<<非空>>
status(状态)                 Enum        //<<非空>>0未知 1启用 2锁定 3删除
department(部门)             String(255) //用户所属部门
lastLoginDate(最后登录日期)  Date
lastLoginIp(最后登录IP)      String(255)
lockDate(锁定日期)           Date

把这段文字复制下来,新建一个表,切到描述字,粘贴进去:

切到表设计看看:

模型图结果:

可以看到,表的信息已经基本完备了。

当然了,上面那么整齐划一的描述字是正规军,其实我来操作的话就比较随意,我会直接输入以下内容(实际上我多半会去掉英文直接用中文字段名,但这里演示还是留着吧):

userInfo 用户信息
----------
id PK
name 姓名
username 用户名
encodedPassword 加密密码
email 邮箱
createDate 创建日期 D
modifyDate 最后修改日期 D
status 状态 E //0未知 1启用 2锁定 3删除
department 部门
lastLoginDate 最后登录日期 D
lastLoginIp 最后登录IP
lockDate 锁定日期 D

其中PK表示主键,主外键默认为整数类型,跟PKI、PKInteger是一个意思。如果主键是字符,可以写成PKS或PKString。

同理,外键可以用FK、FKI、FKInteger、FKS、FKString表示。

其它字段如果不指定类型,则默认为字符串。大家可能发现了,我创建表经常都不指定字段长度的,因为我懒。

转到表设计看看,效果也是杠杠的:

如果想改变字段的位置、添加删除修改字段,也是Ctrl+X、Ctrl+V编辑描述字解决:

最终结果:

通过编辑修改描述字,可以轻松实现字段的增删改移和复制粘贴,对键盘侠们来说是非常方便的。我现在创建表和字段基本上是只用描述字,表格只是用来设置约束之类的属性,其它时候都是查看摆设做样子了。当然,如果你不喜欢用描述字,仍旧用表格也是OK的。

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

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

另外还有列表、函数、事件几个类型,是为方便设计生成代码而增加的。

如果你的场景经常要区分数据库的各种物理数据类型,那EZDML可能不是最好的选择。

七、 默认的物理类型(如VARCHAR2)不是我要的怎么办?

如果只是个别字段,可以直接修改字段属性,设置字段的类型名称。类型名称默认为空,为空时使用默认数据类型名称。如果大多数字段都要改,可以在INI中定义程序默认的物理类型,比如字符串你可以指定默认用NVARCHAR2类型,参见官网《EZDML配置文件说明》中的DefaultFieldTypes相关内容。

八、 除了默认类型,我还需要其它的数据类型怎么办?

逻辑类型(如浮点数)基本上都是有的,但物理数据类型(如CURRENCY,DECIMAL)可能没有。解决办法有两个:

一是在每一个字段的属性中指定类型名称;另一个办法是自定义类型,参见官网《EZDML配置文件说明》中的CustFieldTypes相关内容。

需要说明的是,自定义类型本质上也是修改字段的类型名称,生成SQL时会再替换为最终的类型。

九、 外键连接只有一对多吗?有没有一对一的?

默认就是一对多,不支持直接设置成一对一。不过,如果你把从表的关联字段加一个唯一索引(或者设置为主键),则EZDML能自动识别它是一对一,在画图时会画成一对一。

十、 在模型图中新建或复制粘贴表后,新表的位置是怎么定的?

默认就是最后一次鼠标点击的位置。如果你想新的表出现在指定位置,则新建或粘贴前在那个位置用鼠标点一下,左键右键都行。

如果在左边目录树上新建或粘贴表,则位置由程序自动指定。

十一、 是否支持多字段的组合索引、组合外键、组合主键、触发器等约束?

不支持,本工具以简单设计为主,复杂的数据库设计是不支持的(不过,好像组合主键是支持的,我一开始也不知道,看了版本历史才发现)。

作为一个悲催的程序员,混了这么多年也没混上DBA,很惭愧,说明数据库不是我的专长。EZDML表面上是数据库表设计工具,可实际上为数据库服务的并不深入,更多是为了搞代码、脚本、文档之类的不务正业的东东。如果你想用它来维护触发器、存储过程、表空间、同义词、分区之类的,那你很可能要失望了,可能你想要的功能没有,你不想要的、没什么暖用的东西却很多。

十二、 同名表有什么讲究?为什么有时会警告相同名称的表对象已经存在?

为方便设计管理,在一个DML模型文件里,同一个名称的所有表(不管是不是在一个模型图里)会认为是同一个,修改完一个的属性后会自动同步到其它同名表(注:手工改的才会,用脚本改的不会同步),改一个就等于改了全部。于是问题就来了。

假设我们已经有了一个叫“TableA”的表,有11个字段;这时我们再新建第二个表,也取名为“TableA”,但只有3个字段。请问:创建完第二个表后,TableA应该有几个字段?

嗯,不好回答吧,说11个或3个都会有人有意见。所以,第二个表保存时程序会警告有同名表存在,你是不是搞错了?

你仍然保存的话,点“是”,新表就会覆盖旧表,最终答案是3个字段,有图有真相:

嗯?左边怎么还是11个?表与表之间的信任呢?表急,刷新一下就真相了:

这时两个表就结盟了。我们随便选一个TableA,加一个字段,删一个字段,改一个字段:

保存,第二个表也会自动同步变化:

很和谐吧。

需要注意的是,EZDML同名表在整个文件里都是结盟的,不在同一个模型里也会同步。

不过,又有另一个问题冒出来了,如果这时我把右边那个TableA改名为TableB,会怎么样呢?左边那个会跟着改名吗?

实际上并不会,改完后A是A,B是B。但程序会给你一个警告,因为这意味着B背弃了盟约,从联盟中独立出来了:

十三、 如何快速复制表名/字段名?

左边目录树:选中任何对象,按CTRL+E复制名称(复制高亮内容,显示什么就复制什么,如果有逻辑名,也会一起复制)。

右边模型图:

l  选中整个表,不选中表名和字段名,这时按CTRL+E会复制出一个select语句

l  选中表名,按CTRL+E复制表名(复制高亮内容,显示什么就复制什么,如果有逻辑名,也会一起复制,切换物理/逻辑视图可以控制复制的内容,下同)

l  选中字段,按CTRL+E复制字段名

十四、 如何复制的方式创建新表?

那个,你可以复制粘贴完后改名(会有同名文件链接断开的警告);或者,你先粘贴到记事本里(复制的内容其实是XML文本),改好名再粘贴回去;或者,你先新开一个EZDML粘贴,改名,再复制粘贴回来。

十五、 如何复制字段到另一个表?

有几个办法:

l  在左边目录树中选择一个或多个字段,鼠标右键复制粘贴(不同的文件之间也适用)

l  在左边目录树中选择一个或多个字段,鼠标拖动到另一个表里

l  在表一的描述字中复制需要的内容,到表二的描述字里粘贴

十六、 字段属性里的“编辑器界面”、“业务逻辑”是干什么用的?

没什么用。本来是隐藏起来了的,想准备给自己设计通用界面和程序用的,但我这么多年也就一直停留在“想”的阶段,没有实践;后来有网友想要,就开放出来了。对我来说,对大部分人来说,它们目前仍然是没暖用的东西。

十七、 为什么你的表和字段属性截图有个“自定义”标签?

嗯,有一个用脚本自己生成一个属性页的功能,需要改INI才能开启。这也是一个对我、对大部分人都没什么暖用的功能,但是我觉得它有意思、有挑战性,就加上了。

十八、 那个大小写转换是干什么用的?

顾名思义就是大小写的互转了。从数据库导进来的表一般都是全大写或不分大小写的,有时比较难分辨,不利于查看。例如商家表生成到ORACLE数据库后,再从数据库导进来时,会变成全大写:

很不好看,这时可以点左下方的“大小写转换”按钮,弹出菜单如下:

执行“自动大小写”,系统处理的效果如下:

“自动大小写”的意思是自动对表名和字段名进行首字母大小写分词处理。例如MEMBERRANK会处理为MemberRank。处理过程是根据字典文件dict.txt和MyDict.txt进行简单的匹配,效果并不能做到100%准确,如果对处理结果不满意,可修改字典文件增加你需要的词语。

十九、 那下面还有个汉字转拼音是干什么用的?

比如有这么一个表:

全是中文,生成C++代码是这个样子的:

class 会员
{
private:
protected:int ID;char * 姓名;char * 电话;Date 出生日期;char * 邮箱;char * 地址;public:会员(void);~会员(void);int GetID(void);void SetID(int);char * Get姓名(void);void Set姓名(char *);char * Get电话(void);void Set电话(char *);Date Get出生日期(void);void Set出生日期(Date);
...
};

这个就比较令人无语了,大家习惯了代码是要用英文的。不过我英文不好,或者想偷懒,于是我先执行一下“名称转为逻辑名”,将名称复制到逻辑名上:

再执行“汉字转拼音”,将名称转成伪英文:

再来看生成的代码,是不是顺眼多了:

/* 会员 */
class HuiYuan
{
private:
protected:int ID;char * xingMing;char * dianHua;Date chuShengRiQi;char * youXiang;char * diZhi;
public:HuiYuan(void);~HuiYuan(void);//IDint GetID(void);void SetID(int);//姓名char * GetXingMing(void);void SetXingMing(char *);//电话char * GetDianHua(void);void SetDianHua(char *);//出生日期Date GetChuShengRiQi(void);void SetChuShengRiQi(Date);
...
};

另外,脚本中也可以用ChnToPY这个函数直接转汉字为拼音。

二十、 如何从注释中提取逻辑名?

有几种办法:

1.         从数据库导入时,勾选“注释转为逻辑名”

2.         双击表,弹出表属性对话框,点左下角的“大小写转换”,选择“注释转为逻辑名”

3.         在左边目录对上,选择一个或多个表(选字段也是可以的),然后在右键菜单中执行“大小写转换|注释转为逻辑名”

4.         最高境界:自己写脚本处理,参见《EZDML脚本配置》

二十一、 如何对多个表批量添加或删除字段?

有两种方式,推荐第1种:

1.  在左边目录树中选择多个表,右键菜单执行批量添加或删除字段;

2.  使用脚本:在模型图中右键执行脚本,编写脚本完成批量添加或删除字段,参见《EZDML脚本配置》。

二十二、 如何对多个表或字段批量转换大小写?

请参考上一问题的答案。

二十三、 如何对多个表或字段批量进行某种操作?

请考虑用一下脚本,用过几次后,你可能就不需要问这类问题了,参见《EZDML脚本配置》。

二十四、 PASCAL和JAVASCRIPT脚本有什么用?如何编写脚本?

说来话长,简单地说,它们可以让你彻底掌控模型中的一切。参见《EZDML脚本配置》。

二十五、 为什么有时输入的中文内容是乱码?

旧版win32有这问题,升级到新的win64即可。

非要用旧版本的话,解决办法一般有以下一些:

l  如果是英文或其它非中文的系统,请在控制面板中添加中文语言的支持

l  在区域和语言里设置非Unicode程序的语言为中文(WIN7和WIN10都有这个设置的)

l  如果有多个输入法,可切换一下输入法试试

l  任务栏输入法图标如果是英文(EN),说明是英文键盘,请切换为中文键盘(输入法),设置中文键盘(输入法)为首选

l  如果是WIN10系统,可试着移除英文键盘或美式键盘,只留下中文键盘(输入法),WIN10的中文输入法是已经包含了英文输入的

l  如果语言列表里有多个,确保中文为首选,或者干脆删除其它语言

l  实在不行就只能放弃,可能这工具不适合你的系统

二十六、 文字对象有什么用?

你觉得有什么用就有什么用,也许可以装饰一下吧;对我没什么用。这东西应该是以前遗留下来的,请注意它是以表的形式保存的,只是它的类型TypeName等于“TEXT”。

二十七、 重新排列那个是有什么原理?

作用很明显,表很多的话能自动布局是方便很多。

原先布局的原理就是随机选一个表,为它找一个位置,方法是从左到右从上到下,然后再为跟它相连表表找位置。

最近我改了算法,先找到连线最多的表(有多个则按随机顺序取),把它放在中间;然后找跟它相连的连线最多的表(有多个则按随机顺序取),全放在它的附近;然后为这些表叠代地找相连子表放在附近。改进算法后的效果好了很多。

二十八、 缩略图模式有什么用?

可能表多的时候方便查看吧。还是那句话,你觉得有什么用就有什么用。截两个图直观对比一下:

二十九、 模型图中表的背景颜色是怎么设置出来的?

选择一个或多个表,鼠标右键弹出菜单,执行“设置实体颜色”命令:

建议选择一个相对浅一点的颜色:

效果:

三十、 如何快速查找表或字段?

在左上角查找框中输入表名或字段名,找到对应表后,按住ALT键用鼠标点它,就能快速跳到对应的图形上。

三十一、 那个CTRL+F查找对象又有什么用?

没什么用,之前是用它来查找对象,有快速查找功能之后,基本上就废了。

不过这功能写得不错,自我感觉良好,能查找注释,多线程,支持模糊查找,空格分隔关键词,花了我不少时间,总之就是用了高精尖的技术做了一个没用的东西,舍不得删,就留着了。

三十二、 连不上ORACLE怎么办?

一般来说,连不上最大的可能就是ORACLE客户端(oci.dll及相关文件)的版本不对。EZDML需要32位的oci.dll及相应的支持文件,而目前大部分oracle安装程序都是64位,因此需要单独下载安装。两个办法:

A.下载32位windows的oracle client并安装(必须32位的,数据库自带的oci一般是64位的,所以不能直接用,要另行安装);

B.下载32位windows的oracle instantclient,并按说明修改ezdml.INI指定OCIDLL路径。

oracle client版本号要跟数据库服务匹配,比如11GR2的32位的oracle client是这个:

https://www.oracle.com/database/technologies/112010-win32soft.html

oracle client包含功能较全,所以比较大,一般有几百MB,需要安装、配置,相对麻烦。如果不想那么麻烦,可使用oracle instant client,绿色环保,一般只有几十MB。

32位的instant client目前在这个位置可以找到:

适用于 Windows 32 位的 Instant Client | Oracle 中国

注意选择正确的版本号。

三十三、 还是连不上数据库怎么办?或者其它类型的数据库连不上怎么办?

那个,内事不决问百度,外事不决。。。自己想办法。

我自己平时常用的是ORACLE,其它除了ODBC就是通过EZDML主目录那几个DLL访问的了。肯定都是试过的,但每个人的环境有区别,只能说在我机上测试通过了。

三十四、 生成的SQL我有一点不喜欢,想小改一下,该怎么办?

编写PASCAL脚本接管全局事件,在生成表、字段SQL的地方,程序会将当前表、字段、数据库比对的信息、默认生成的SQL传给你,你可以为所欲为,之后再将新的结果返回即可。参见《EZDML脚本配置》。

三十五、 如何将DML文件与旧版本比较?

有时我们想比较一下新版本与旧版本模型之间的差异。正常情况下,我们是和数据库比较生成差异SQL。但是,EZDML也提供了与另一个DML文件比较的功能,就是在下图这个小箭头的下拉菜单里了:

先选择一个数据库类型,再选择最下面那个EZDMLFILE,选择要对比的文件,生成SQL,即可。

三十六、 临时文件是干什么用的?

以前,EZDML保存的是XML格式,关闭时总要问是否要保存,另外打开XML文件速度也很慢(二进制的格式快,但显然不方便维护);后来嫌烦,就直接在关闭时保存一个二进制临时文件到源文件旁边,下次打开时就直接加载这个临时文件,速度杠杠的,世界也清净了。再后来,觉得临时文件放在源文件旁边不太妥,就将它移到系统临时文件目录了,同时增加了定时保存功能,将保存历史记录也保存到了临时文件夹。所以,你可以在临时文件夹中找到历史文件和最近一次退出时的文件。

三十七、 EZDML有DMH、DMX、DMJ三种文件保存格式,用哪一种比较好?

推荐用DMJ格式,它其实是JSON文本,可用记事本打开来修改(注意是GBK编码)。

DMH是二进制格式,速度快但不好维护。

DMX是XML格式,以前没有JSON的时候用它。

三十八、 如果想重新加载原始的文件,不想用临时文件要怎么操作?

可以按ALT+1重新打开文件(文件菜单里有这个命令),第一次打开文件时是用临时文件的,而已经打开的情况下再次重新打开,程序就会提示是否要跳过临时文件了:

你也可以在INI配置中永久禁用临时文件,参见《EZDML配置文件说明》。

三十九、 EZDML有哪些配置文件?如何设置这些配置?

说来话长,参见官网《EZDML配置文件说明》。

四十、 程序支持哪些命令行参数?

支持传一到两个文件名作为启动参数:

l  如果传一个参数,则参数可以是一个DML模型文件名(dmx、dmh或dmj)由程序直接打开,也可以是一个脚本文件名(js或pas)来加载并执行

l  如果传两个参数,则参数1应为一个DML模型文件名(dmx、dmh或dmj),参数二为脚本文件名(js或pas),程序将在打开参数一模型文件后再加载执行参数二的脚本

四十一、 如何复制或导出模型图像?

选择要复制或导出的对象(不选择则默认全部),右键菜单中选择“复制图像”,可以将图像复制到剪贴板(默认为PNG图格式,如果需要WMF格式,可按住SHIFT键);右键菜单选择“导出”,然后选择保存类型为BMP、JPG、PNG或WMF格式。

注:发现WINDOWS7/10自带画笔直接打开WMF文件是残缺的,不知出了什么问题,以前不是这样的;用我自己写的工具能打开;好消息是目前WORD仍支持粘贴WMF格式。

矢量图在放大时是有优势的,我们可以简单作个对比。

下面左边是直接复制图像(PNG格式)后粘贴,右图是粘贴后拉大:

1比1乍一看没什么,放大一下就露出马脚了。

下面左边是按住SHIFT键复制图像(WMF格式)后粘贴,右图是粘贴后拉大:

 

果然吧,没有对比就没有伤害。

四十二、 导出WORD文档格式我不喜欢,能改不?

理论上是可以的,WORD、HTML、MHT都可以改,实际上行不行还得看情况。WORD文档其实是MHT(MIME)格式,是由脚本生成的。

Templates目录下有下export_doc_html.ps_的脚本文件,它可以生成HTML和MHT两种格式,导出WORD是用了其中的MHT格式。你只要看懂了它,基本上就可以随意改了。也不难看懂的,信我没错,除了<% %>里的脚本,剩下的全是HTML。原始代码是我新建一个WORD文档后另存HTML搞出来的。

四十三、 导出的EXCEL格式我也想改,要怎么弄?

改不了,这个是硬核编程出来的。要不你考虑下改HTML输出TABLE吧?或者自己写一个自定义工具脚本,流程我都帮你想好了,用脚本把模型输出到JSON文件里(allModels.saveToFile(application.exeName+'.tmp.dmj'),一句代码的事),再调一个你自己写的EXE程序读这个JSON,剩下的事你自己看着办了。

四十四、 如何配置外部工具?

往那个自定义工具目录塞文件、塞程序、塞脚本就是了,参见《EZDML配置文件说明》。

四十五、 字符编码工具是做啥用的?

是我自己常用的一些编码转换工具,包含几种编码的相互转换、JSON的格式化、MD5计算、随机数生成等功能。本来是独立的小程序,因为要用的时候不好找,而EZDML是经常用的,干脆就绑一块了。

四十六、 EZDML能导入其它工具(如PowerDesigner)的文件吗?

不能,目前唯一能做的是导入现有数据库表结构。当然,有脚本工具在,理论上你可以写脚本导入任何东西。就像某人曾经说的,给客户一个PL/SQL dev就行了,想干啥都可以自己到数据库里去弄,还要啥自行车呢。

EZDML只是个小工具,完全无法与其它大型工具相提并论。如果你用其它工具用得很好,没必要使用本工具;如果你的项目已经用开了一种工具,奉劝你不要随便冒险作出改变(除非你们项目组所有成员本来早就已经看它不顺眼了);如果你觉得其它工具不太好用,或者还没有固定使用哪种工具,或者有一些功能是你正需要的,可以试试EZDML。

还是要补上那句话,使用EZDML出现任何后果本人均不负责。

四十七、 EZDML收费吗?需要捐助吗?

EZDML是免费的。使用本软件导致任何后果作者均不负责。

暂时也不需要捐助。之前有网友非要表示捐助了一下,在此表示感谢!

四十八、 EZDML是用什么开发的?

最开始是Delphi,现在是Lazarus,开发语言是Pascal。

四十九、 EZDML会开源吗?会有MAC版吗?

暂时不会开源。MAC/Linux版已经发布欢迎使用。

五十、 还有其它的问题怎么办?

About里有联系方式:

你可能猜到了,这是个标准的MessageBox,在这个界面按CTRL+C,再到文本框里CTRL+V,就能把内容拷出来:

---------------------------
表结构设计器 - demo_CHS.dmj
---------------------------
EZDML V2.35 2019-11-09 (Freeware)
http://www.ezdml.com
huzzz@163.com
QQ group: 344282607
http://blog.csdn.net/huzgdAcknowledgements:
BESEN Javascript, Benjamin 'BeRo' Rosseaux
RemObjects Pascal Script, Carlo Kok, www.remobjects.com
...
---------------------------
确定
---------------------------

Q群仅用于交流问题,平时没什么问题时是比较安静的,入群没有欢迎仪式,不需要打招呼和自我介绍,想出群也不用客气走就是了,发广告或不合适的主题的话很可能被禁言或踢出。

邮件不常看,未及时回复时请谅解。

作者只是一个普通俗人,有时忙有时心情不好,有时可能有些问题不喜欢或不愿意或其它原因解决不了的,也请见谅。

未完待续~后续有其他典型问题的话会陆续更新此文档。

此文档及相关资料的解释权归作者所有,转载请注明来源。

表结构设计器EZDML常见问题(2019年11月整理)相关推荐

  1. 表结构设计器EZDML介绍说明

    表结构设计器EZDML1.5新版本发布,下载地址:http://download.csdn.net/source/1858073 新版本比以前介绍的1.2版本改进了很多,因此重新写了以下的介绍说明. ...

  2. 表结构设计器EZDML V2.39发布

    好久没更新了,前段时间CSDN说我没认证不让登录,最近又可以了,正好发个版本. EZDML是一个超轻量级的表结构设计工具,可快速的进行数据建模,能迅速生成代码模板.简单界面和字典等方案文档,支持脚本编 ...

  3. mysql表结构设计工具_工具 EZDML表结构设计器

    软件官网:http://www.ezdml.com/ 作者邮箱:huzzz@163.com EZDML EZDML是一个数据库建表的软件. 可快速的进行数据库表结构设计,建立数据模型. 类似大家常用的 ...

  4. ruoyi vue表单设计器

    ruoyi vue表单设计器 整了半个多月的表单设计器终于出来了! 说一下我的具体需求吧. 因为公司要做很多有关表单的业务,为了减少代码量和增加工作效率. 和工作流进行整合,在工作流中调用表单. 之前 ...

  5. .net erp(办公oa)开发平台架构概要说明之表单设计器

    2019独角兽企业重金招聘Python工程师标准>>> 背景:搭建一个适合公司erp业务的开发平台. 架构概要图: 表单设计开发部署示例图   表单设计开发部署示例说明 1)每个开发 ...

  6. Antd Vue 表单生成快速开发指南,内附强大的表单设计器

    之前发布了一款基于Element的表单设计器,可以快速设计和生成表单,设计器地址:http://form.making.link/.现在我可以告诉大家,Antd表单支持来了,可以使用设计器设计好表单后 ...

  7. java 表单设计器 开源_6款在线表单设计器_Web表单设计器_AnyReport

    AnyReport表单设计器作为报表的一个组件,可设计多样式表单,收集数据,可生成对应的物理表字段,支持在线设计表单.预览 表单,并支持一对多关系的表单结构设计,生成的表单支持输出excel文件,使用 ...

  8. html5拖拽表单设计器,require+jquery+backbone实现拖拽式报表设计器-拖拽式表单设计器...

    HTML我帮您-拖拽式报表设计器-拖拽式表单设计器是一个可视化设计器,基于require+jquery+backbone+underscore+bootstrap实现的表单设计器.思想来源于 Layo ...

  9. 不得不说,还是这款开源工作流表单设计器较合心意!

    近几年,低代码的热潮持续不断.且不说之前的阿里钉钉跨平台写作方式.飞书上的审批流程,就说现在我们大部分人接触到的表单审批.投票的模板等,几乎都是以低代码的方式来呈现在大家面前的.在数字化转型的浪潮下, ...

最新文章

  1. AIX系统管理--关于unsuccessful login attempts和account_locked
  2. SpringDataJpa开发--继承JpaRepository实现简单条件查询
  3. allow control allow origin_Origin绘图笔记(一)——如何高效绘制一个漂亮的数据图...
  4. 揭秘阿里中台!一文看懂阿里推荐业务的两项利器 | 赠书
  5. mysql 强项_mysql数据目录迁移
  6. 手把手教你强化学习 (六) 强化学习中的无模型预测
  7. ABAP SMARTFORMS 套打
  8. 智慧安防体系包括哪些智能化设备?
  9. Atitit.设计模式-----触发器模式 trigger  详解
  10. Discuz 3.2x 的那些坑
  11. linux程序cat本地文本文件,linux – 这里有cat的文件
  12. 使用html打开电脑前置摄像头并拍照
  13. 瑜伽形体棍出口欧盟CE认证,出口美国CPC认证标准介绍
  14. Dubbo Failover机制
  15. 黑白照片怎么上色?学会这招轻松解决
  16. JM中的一些问题总结
  17. 高考失利之后,属于我的大学本科四年
  18. 获取图片的EXIF信息如此困难?
  19. ip地址与MAC地址 中的 组播
  20. 【vue】vue安装卡住/报错

热门文章

  1. java开发环境搭建教程
  2. 深入了解JVM之内存模型(四)
  3. Java之于Javascript就好比Car(汽车)之于Carpet(地毯)。
  4. ZN-61A网络型PLC可编程控制器实训装置
  5. 穆迪收购风险与合规情报、数据和软件领域的领导者RDC
  6. 车路协同云/边缘云服务平台概要【原创】
  7. 浏览器和服务器之间的通信
  8. 2021年的Gartner云基础设施和平台服务魔力象限有什么不一样?
  9. 神州数码交换机CS6200命令学习(三)
  10. dsp图像处理Prewitt算子边缘检测