日期:2014-06-10  浏览次数:20707 次

     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预览功能如下图: