DataUML 1.2版本在软件架构上有了很大的变化,目前DataUML支持Access、SQLite、MY SQL 、ORACLE、MS SERVER2000、MS SERVER2005、MS SERVER2008数据库。
主要更新内容如下:
1、支持SQLite数据库,支持生成SQLite数据库模型; 2、支持生成SQLite数据库代码; 3、支持数据表字段自定义属性; 4、数据表属性、字段属性、键属性和索引属性; 5、支持用户自定义类型; 6、支持表索引; 7、支持生成、批量导出SQL语句以及SQL预览功能;
软件主界面
下面我将介绍1.2版本主要更新的内容。
一、支持SQLite数据库
1、点击工具栏上的 按钮,出现下拉菜单如下图:
点击“SQLite”,出现连接SQLite数据库的界面,如下图:
点击“确定”,这样我们就可以成功连接SQLite数据库了。
成功连接数据库之后,选择数据库节点,右键“生成数据模型”,这里我们选择C#模型,如下图成功生成了SQLite数据库模型
这样数据模型和SQLite数据库绑定了,修改数据模型可以直接同步到SQLite数据库,具体操作这里不演示了。
二、支持生成SQLite数据库代码
选择右边的SQLiteDAL.tt”模板文件,选中模型中的表,右键点击“查看代码”,如下图
就可以成功生成SQLite代码了。如下图
三、数据表字段自定义属性
数据表的字段可以自己定义一些自定义属性,如下图
生成代码的时候可以得到字段的自定义属性值。如下图
获得字段自定义属性的模板代码如下:
命名空间:<#= host.ClassProperty.Namespace #>类名:<#= host.ClassProperty.ClassName #>类中文名:<#= host.ClassProperty.ClassOtherName #>表名:<#= host.ClassProperty.TableName #>可访问性:<#= host.ClassProperty.Accessibility==null?"":host.ClassProperty.Accessibility #>修饰符:<#= host.ClassProperty.Modifier==null?"":host.ClassProperty.Modifier #>用户:<#= host.ClassProperty.User==null?"":host.ClassProperty.User #> 备注:<#= host.ClassProperty.Remarks #>数据库类型:<#= host.ClassProperty.DataAccessType #>语言:<#= host.ClassProperty.ProjectLanage #>字段:<# foreach(var f in host.ClassProperty.Fields){ WriteLine(" 属性名:"+f.PropertyName); WriteLine(" 属性别名:"+f.PropertyOtherName); WriteLine(" 属性类型:"+f.DataType); WriteLine(" 修饰符:"+f.Modifier); WriteLine(" 可访问性:"+f.Accessibility); WriteLine(" 是否空类型:"+f.IsNullType); WriteLine(" 初始值:"+f.InitialValue); WriteLine(" 是否只读:"+f.IsReadable); WriteLine(" 是否可写:"+f.IsWritable); WriteLine(" 字段名:"+f.FieldName); WriteLine(" 字段类型:"+f.FieldType); WriteLine(" 长度:"+f.FieldLength); WriteLine(" 自增字段:"+f.isIdentity); WriteLine(" 是否为空:"+f.IsNull); WriteLine(" 是否主键:"+f.IsPrimaryKey); if(f.IsPrimaryKey) { WriteLine(" 主键类型:"+f.PrimaryKeyType); } WriteLine(" 是否外键:"+f.IsForeignKey); WriteLine(" 默认值:"+f.DefaultValue); WriteLine(" 备注信息:"+f.Remarks); if(f.Attributes.Count>0) { WriteLine(" 属性:"); foreach(var p in f.Attributes) { WriteLine(" 属性名:"+p.Name); WriteLine(" 属性值:"+p.Value); } } if(f.CustomAttributes.Count>0) { WriteLine(" 自定义属性:"); foreach(var p in f.CustomAttributes) { WriteLine(" 属性名:"+p.Name); WriteLine(" 属性值:"+p.Value); } } WriteLine(" ----------------");}#>
四、数据表属性、字段属性、键属性和索引属性
1、MY SQL数据库的数据表属性,如下图
2、MY SQL数据库的数据表字段属性,如下图
3、MS SERVER数据库的主键属性,如下图
4、MS SERVER数据库的外键属性,如下图
5、MS SERVER数据库的索引属性,如下图
五、支持用户自定义类型
用户可以自己定义数据类型,如有时候我们需要以GUID来作为表的主键,这时我们可以定义一个GUID类型的字段类型。具体操作流程:选择数据模型节点,右键,在弹出的菜单中选择“设置”,如下图
这里我们定义GUID的类型为nvarchar,长度为38,我们就可以使用这个数据类型了,如下图
六、支持表索引;
增加对数据表索引的支持,主要表现在以下几个方面:
1)、从数据库反射出模型时,把表索引信息也反射出来了;
2)、支持索引属性信息;
3)、支持索引信息和数据库表索引同步;
4)、支持生成索引的SQL语句;
七、支持生成和批量导出SQL语句;
选择数据模型节点,右键,如下图:
选择“生成SQL...”可以生成完整的数据库SQL语句,如下图
选择“导出SQL...”可以把SQL语句保存到文本文件中。
SQL预览功能如下图: