前言
在上篇文章结尾的时候有说要研究实现【名称+备注来生成数据库注释】,呵呵比较顺利的是写完那篇文章不久就把这个给鼓捣出来了,关于它里面那些怪怪的语法没有找到合适的资料,但是明白了一点,在里面直接写SQL语句还是可以的,所以得以顺利达到目的。关于PD配置及生成这里就不重复讲解了,下面进入正题。
正文
1. 修改当前DBMS(Script\Objects\Column\ColumnComment)位置的值如下:
DECLARE
@des
VARCHAR
(
255
)
SET
@des
=
CASE
N
'
%COMMENT%
'
WHEN
N
'
%Name%
'
THEN
N
'
%Name%
'
ELSE
N
'
%Name%
'
+
'
(
'
+
N
'
%COMMENT%
'
+
'
)
'
END
EXECUTE
sp_addextendedproperty N
'
MS_Description
'
,
@des
, N
'
user
'
, N
'
%OWNER%
'
, N
'
table
'
, N
'
%TABLE%
'
, N
'
column
'
, N
'
%COLUMN%
'
2.PD中添加测试用的字段 性别
3.生成SQL语句,生成之后的SQL语句为:
/*
==============================================================
*/
/*
DBMS name: SQL SERVER 2000 [EXT]
*/
/*
Created on: 2008-2-28 16:57:43
*/
/*
==============================================================
*/
if
exists
(
select
1
from
sysobjects
where
id
=
object_id
(
'
dbo.Employee
'
)
and
type
=
'
U
'
)
drop
table
dbo.Employee
go
/*
==============================================================
*/
/*
Table: Employee
*/
/*
==============================================================
*/
create
table
dbo.Employee (
ID
int
not
null
,
Username
varchar
(
20
)
null
,
Password
varchar
(
20
)
null
,
Sex
int
null
,
constraint
PK_EMPLOYEE
primary
key
(ID)
)
go
EXECUTE
sp_addextendedproperty N
'
MS_Description
'
, N
'
Employee
'
, N
'
user
'
, N
'
dbo
'
, N
'
table
'
, N
'
Employee
'
,
NULL
,
NULL
go
DECLARE
@des
VARCHAR
(
255
)
SET
@des
=
CASE
N
'
主键ID
'
WHEN
N
'
主键ID
'
THEN
N
'
主键ID
'
ELSE
N
'
主键ID
'
+
'
(
'
+
N
'
主键ID
'
+
'
)
'
END
EXECUTE
sp_addextendedproperty N
'
MS_Description
'
,
@des
, N
'
user
'
, N
'
dbo
'
, N
'
table
'
, N
'
Employee
'
, N
'
column
'
, N
'
ID
'
go
DECLARE
@des
VARCHAR
(
255
)
SET
@des
=
CASE
N
'
用户名
'
WHEN
N
'
用户名
'
THEN
N
'
用户名
'
ELSE
N
'
用户名
'
+
'
(
'
+
N
'
用户名
'
+
'
)
'
END
EXECUTE
sp_addextendedproperty N
'
MS_Description
'
,
@des
, N
'
user
'
, N
'
dbo
'
, N
'
table
'
, N
'
Employee
'
, N
'
column
'
, N
'
Username
'
go
DECLARE
@des
VARCHAR
(
255
)
SET
@des
=
CASE
N
'
密码
'
WHEN
N
'
密码
'
THEN
N
'
密码
'
ELSE
N
'
密码
'
+
'
(
'
+
N
'
密码
'
+
'
)
'
END
EXECUTE
sp_addextendedproperty N
'
MS_Description
'
,
@des
, N
'
user
'
, N
'
dbo
'
, N
'
table
'
, N
'
Employee
'
, N
'
column
'
, N
'
Password
'
go
DECLARE
@des
VARCHAR
(
255
)
SET
@des
=
CASE
N
'
1 男 0 女
'
WHEN
N
'
性别
'
THEN
N
'
性别
'
ELSE
N
'
性别
'
+
'
(
'
+
N
'
1 男 0 女
'
+
'
)
'
END
EXECUTE
sp_addextendedproperty N
'
MS_Description
'
,
@des
, N
'
user
'
, N
'
dbo
'
, N
'
table
'
, N
'
Employee
'
, N
'
column
'
, N
'
Sex
'
go
最后效果图:
注意:本次使用的例子是在上篇文章的基础上进行修改的,包括数据库以及PD配置!!