DataUml Design 介紹8-DataUML 1.2版本正式釋出
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