DataUml Design 介绍8-DataUML 1.2版本正式发布
為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??
DataUML 1.2版本在軟件架構(gòu)上有了很大的變化,目前DataUML支持Access、SQLite、MY SQL 、ORACLE、MS SERVER2000、MS SERVER2005、MS SERVER2008數(shù)據(jù)庫。? 下載
?主要更新內(nèi)容如下:
1、支持SQLite數(shù)據(jù)庫,支持生成SQLite數(shù)據(jù)庫模型;
2、支持生成SQLite數(shù)據(jù)庫代碼;
3、支持?jǐn)?shù)據(jù)表字段自定義屬性;
4、數(shù)據(jù)表屬性、字段屬性、鍵屬性和索引屬性;
5、支持用戶自定義類型;
6、支持表索引;
7、支持生成、批量導(dǎo)出SQL語句以及SQL預(yù)覽功能;
?
軟件主界面
下面我將介紹1.2版本主要更新的內(nèi)容。?
一、支持SQLite數(shù)據(jù)庫
1、點(diǎn)擊工具欄上的?按鈕,出現(xiàn)下拉菜單如下圖:
點(diǎn)擊“SQLite”,出現(xiàn)連接SQLite數(shù)據(jù)庫的界面,如下圖:
點(diǎn)擊“確定”,這樣我們就可以成功連接SQLite數(shù)據(jù)庫了。
成功連接數(shù)據(jù)庫之后,選擇數(shù)據(jù)庫節(jié)點(diǎn),右鍵“生成數(shù)據(jù)模型”,這里我們選擇C#模型,如下圖成功生成了SQLite數(shù)據(jù)庫模型
這樣數(shù)據(jù)模型和SQLite數(shù)據(jù)庫綁定了,修改數(shù)據(jù)模型可以直接同步到SQLite數(shù)據(jù)庫,具體操作這里不演示了。
二、支持生成SQLite數(shù)據(jù)庫代碼
選擇右邊的SQLiteDAL.tt”模板文件,選中模型中的表,右鍵點(diǎn)擊“查看代碼”,如下圖
?
就可以成功生成SQLite代碼了。如下圖
三、數(shù)據(jù)表字段自定義屬性
數(shù)據(jù)表的字段可以自己定義一些自定義屬性,如下圖
生成代碼的時(shí)候可以得到字段的自定義屬性值。如下圖
獲得字段自定義屬性的模板代碼如下:
命名空間:<#= 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 #>
數(shù)據(jù)庫類型:<#= 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("????默認(rèn)值:"+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("????----------------");
}
#>??
四、數(shù)據(jù)表屬性、字段屬性、鍵屬性和索引屬性
1、MY SQL數(shù)據(jù)庫的數(shù)據(jù)表屬性,如下圖
2、MY SQL數(shù)據(jù)庫的數(shù)據(jù)表字段屬性,如下圖
3、MS SERVER數(shù)據(jù)庫的主鍵屬性,如下圖
4、MS SERVER數(shù)據(jù)庫的外鍵屬性,如下圖
5、MS SERVER數(shù)據(jù)庫的索引屬性,如下圖
?
五、支持用戶自定義類型
用戶可以自己定義數(shù)據(jù)類型,如有時(shí)候我們需要以GUID來作為表的主鍵,這時(shí)我們可以定義一個(gè)GUID類型的字段類型。具體操作流程:選擇數(shù)據(jù)模型節(jié)點(diǎn),右鍵,在彈出的菜單中選擇“設(shè)置”,如下圖
這里我們定義GUID的類型為nvarchar,長度為38,我們就可以使用這個(gè)數(shù)據(jù)類型了,如下圖
?
六、支持表索引;
增加對(duì)數(shù)據(jù)表索引的支持,主要表現(xiàn)在以下幾個(gè)方面:
1)、從數(shù)據(jù)庫反射出模型時(shí),把表索引信息也反射出來了;
2)、支持索引屬性信息;
3)、支持索引信息和數(shù)據(jù)庫表索引同步;
4)、支持生成索引的SQL語句;
七、支持生成和批量導(dǎo)出SQL語句;
選擇數(shù)據(jù)模型節(jié)點(diǎn),右鍵,如下圖:
選擇“生成SQL...”可以生成完整的數(shù)據(jù)庫SQL語句,如下圖
選擇“導(dǎo)出SQL...”可以把SQL語句保存到文本文件中。
SQL預(yù)覽功能如下圖:
?
轉(zhuǎn)載于:https://my.oschina.net/netuml/blog/224745
總結(jié)
以上是生活随笔為你收集整理的DataUml Design 介绍8-DataUML 1.2版本正式发布的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 晚上梦到地震是怎么回事
- 下一篇: 转: seajs手册与文档之 -- 模块