1. 程式人生 > 實用技巧 >DataUml Design 介紹8-DataUML 1.2版本正式釋出

DataUml Design 介紹8-DataUML 1.2版本正式釋出

>>> hot3.png

 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(varpinf.Attributes)
{
WriteLine("屬性名:"+p.Name);
WriteLine("屬性值:"+p.Value);
}
}
if(f.CustomAttributes.Count>0)
{
WriteLine("自定義屬性:");
foreach(varpinf.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預覽功能如下圖:




轉載於:https://my.oschina.net/netuml/blog/224996