我習(xí)慣在寫表的創(chuàng)建腳本時(shí)將注釋直接寫在腳本里,比如
/*賬套*/
CREATE TABLE [dbo].[AccountingBook]
(
[IDNO] NVARCHAR (255) NOT NULL, /*ID*/
[BH] NVARCHAR (255) NULL, /*業(yè)務(wù)編號(hào)*/
[Name] NVARCHAR (255) NOT NULL, /*名稱*/
[Decription] NVARCHAR (255) NULL, /*描述*/
[Owner] NVARCHAR (255) NOT NULL, /*所屬*/
CONSTRAINT [PK_AccountingBook] PRIMARY KEY CLUSTERED ([IDNO] ASC)
)
這樣寫很直觀,如果在vs里創(chuàng)建一個(gè)數(shù)據(jù)庫項(xiàng)目,把表的創(chuàng)建腳本放在里面進(jìn)行管理,就非常方便的。
由于習(xí)慣用自己的Orm框架,所以DTO也就是那些數(shù)據(jù)映射實(shí)體我都是用codeSmith生成,生成這些DTO對象時(shí),我想共用我的那些注釋,那么我該怎么辦呢,之前,我需要把這些注釋復(fù)制出來寫成一些注釋創(chuàng)建的腳本,像這樣
exec sp_addextendedproperty N'MS_Description', N'字段描述', N'user', N'dbo', N'table', N'表名', N'column', N'字段名'
添加注釋的目的是除了在使用數(shù)據(jù)庫連接工具時(shí)方便查看表和字段的說明外,還可以使用CodeSmith生成代碼的時(shí)候就可以通過編寫模版生成帶注釋的映射DTO 對象,如下
/// <summary>/// 業(yè)務(wù)編號(hào)/// </summary>[Column(ColumnName=Columns.BH,FullName=Columns.BHFullName,Index=1,CType=typeof(string),Description="業(yè)務(wù)編號(hào)")]
[DataMember(Order = 1)]public virtual string BH{get;set;}
但是由于表創(chuàng)建腳本里的注釋不能直接寫入到數(shù)據(jù)庫的表和字段中,所以注釋的創(chuàng)建腳本我需要再寫一次,我覺得比較不爽,于是我決定寫個(gè)小工具從表的創(chuàng)建腳本里面抽取那些本來就寫好的注釋,從而減小重復(fù)機(jī)械的工作,也防止錯(cuò)誤的發(fā)生。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版