powerdesign12 PDM导出带有字段说明的sql及逆向工程导入字段说明
时间:2010-09-15 来源:lulei_s
一、从PDM导出带有字段说明的sql文件
1、新建DBMS
2、点击新建
3、输入新建DBMS的名称,并选择拷贝源为Miscrosoft SQL Server2005。
4、点击保存后弹出如下窗口
5、选择左侧树节点 Script-->Objects-->Column-->ColumnComment,设置其值为
EXEC sys.sp_addextendedproperty
@name=N'MS_Description', @value=N'%Name%',@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'TABLE', @level1name=N'%TABLE%', @level2type=N'column', @level2name=N'%COLUMN%'
说明:该字段是为了导出符合Sqlserver2005字段说明的模板,%%为变量,不可修改,其它可视情况变更。
6、选择左侧树节点 Script-->Objects-->Table-->TableComment,去掉其值内容。
说明:因为我的例子中不需要表说明。
7、点击确定,返回上层并关闭设置DBMS窗口。
8、新建PDM ,选择DBMS为刚才新建的SQLSERVER2005[EXT].
9、新建一张表,并定义字段说明。
10、选择生成数据库,就得到sql脚本了。
11、把这段脚本放在SQLSERVER2005中执行就能得到带有字段说明的表了。
二、逆向工程导入字段说明
1、新建一个PDM,选择DBMS为刚才定义好的SQLSERVER2005[EXT]。
2、选择数据库-->数据库逆向工程
3、这里选择刚才生成的sql脚本文件。
4、点击确定就可得到带有字段说明的PDM了。
说明:
其实原理很简单,只要保证sqlserver2005导出的脚本和PD导出脚本的模板一致即可。
附注:
PD导出的sql:
/*==============================================================*/
/* DBMS name: SQLSERVER2005[EXT] */
/* Created on: 2010-9-15 17:33:54 */
/*==============================================================*/
if exists (select 1
from sysobjects
where id = object_id('Table_1')
and type = 'U')
drop table Table_1
go
/*==============================================================*/
/* Table: Table_1 */
/*==============================================================*/
create table Table_1 (
Column_1 int null,
Column_2 int null
)
go
EXEC sys.sp_addextendedproperty
@name=N'MS_Description', @value=N'列_1',@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'TABLE', @level1name=N'Table_1', @level2type=N'column', @level2name=N'Column_1'
go
EXEC sys.sp_addextendedproperty
@name=N'MS_Description', @value=N'列_2',@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'TABLE', @level1name=N'Table_1', @level2type=N'column', @level2name=N'Column_2'
go
SQLSERVER2005导出的SQL:
CREATE TABLE [dbo].[Table_1](
[Column_1] [int] NULL,
[Column_2] [int] NULL
) ON [PRIMARY]
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'列_1' ,@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'TABLE', @level1name=N'Table_1', @level2type=N'COLUMN', @level2name=N'Column_1'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'列_2' ,@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'TABLE', @level1name=N'Table_1', @level2type=N'COLUMN', @level2name=N'Column_2'