在进行数据库设计的时候,想着正好安装着EA软件呢,看能不能用EA画ER模型。结果发现不仅能画,而且还能进行整套数据库设计(生成SQL脚本)。
下面以机房收费系统用户--学生为例。学生可以查看余额,可以查看上机记录,可以查看上机状态,可以查看充值记录,可以修改密码。步骤如下:
(1)建立ER图之前,首先在EA中应选择使用哪种数据库。如图所示:
(2)画学生用户的ER模型图,如图所示:
(3)转换成数据模型图,选中所有的实体和属性名,右击,点击转换出现如图:
(4)选择ERD to Data Modeling选项及保存的位置,点击开始转换,转换成如图所示:
(5)任何的数据库表都需要主键,外键和约束,下面我们对这些表进行修改,选择任何一个数据表右击出现如图:
(6)点击“属性”按钮,出现如图所示:
(7)点击“Table Detail”,选中“columns”,点击确定出现如图所示:
(8)按照步骤走,就对表设置完主键和数据类型了。另外我们还要对其添加外键,选中联系(如:
右击,选择外键,对其就可以进行设置。这样修改基本就完成。
修改完的数据模型图如图所示:
(9)选中数据模型图,右击,选择“代码生成”--"Generate Selected Elements",出现如图所示:
(10)进行修改和对对象进行全选。在“文件生成”那,可以选择“单个文件”,也可以选择“每个表生成一个文件”。选择“每个表生产一个文件”,生成的形式如图:
选择“单个文件”,生成形式如下:
这样就已经创建成功啦!(SQL脚本就给大家展示了!)
直接看一下数据库中的表吧!如图:
当然这样建立的数据库,只是雏形,我们还要进行优化:消除重复和遵循三范式。
这应该说是懒人的办法直接生成SQL脚本,但是这个也是有难度的,因为我们必须对ER图相当了解和对各种表的关系进行非常透彻的分析,不然画出来的数据库还要进行相当大的修改。
在我们这个初学的阶段,我觉得还是用动手设计数据库比较好,练习一下对数据库的使用,只是最近碰见了一种这样的办法,先尝试了一下!
Ps:对这种办法只是实验了一下,还不成熟!请多多指教!