PowerDesigner 12 根据名称生成注释(完整示例)

前言
    以前用过一次PowerDesigner(后面都简称PD了),当时还是用的11版本的PD,没有深入研究,简单的试用了一下。近来项目要用,同事已经把数据库设计好了,但是生成出来的数据库表结构确没有注释信息。研究几个小时后终于试出来了,不知道搜索的方法不对还是确实没有根据PD的名称来生成数据库注释信息的文章。

环境
    Sybase.PowerDesigner 12 汉化版
    Microsoft SQL Server 2000 (sp3)

鸣谢
    1.    如何让PowerDesigner支持自动生成含SQL Server 2000的表和列注释的角本

正文
    这里从头开始以贴图附代码的方式来完整的展示用PD生产SQL并生产数据库表结构的整个过程。   
    第一步:    新建自定义DBMS: 

这里只是修改部分参数,选择拷贝自Micorsoft SQL SERVER 2000。然后如图保存:

接着会弹出如下交互窗口:

    第二步:修改关键特征树,在 Script\Objects\Table\TableComment和Script\Objects\Column\ColumnComment位置的直修改如下:
        表级注释

EXECUTE sp_addextendedproperty N'MS_Description', N'%COMMENT%', N'user', N'%OWNER%', N'table', N'%TABLE%', NULL, NULL

     列级注释

EXECUTE sp_addextendedproperty N'MS_Description', N'%Name%', N'user', N'%OWNER%', N'table', N'%TABLE%', N'column', N'%COLUMN%'

        如图:

        确定。
    第三步:新的Physical Data Model(PDM),如下就不详细接受只贴图了:



注意:这里建表的时候最好选定所有者,没有自己新建一个。
    第四步:配置参数,生成SQL 语句。工具栏(Tools)—>生成数据库(Generate Database)

勾上以上复选框,否则当你备注为空的时候注释出不来;反之,如果你备注不为空那么名称(Name)才能作为注释出现!!

去掉上面User前面的勾,否则到时候生成SQL语句执行的时候可能出现如下错误:

服务器: 消息 15181,级别 16,状态 1,过程 sp_revokedbaccess,行 43
无法除去数据库所有者。
服务器: 消息 15007,级别 16,状态 1,过程 sp_grantdbaccess,行 98
登录 'dbo' 不存在。

最后点确定生成,PD最终生成的SQL代码如下:

/*==============================================================*/
/* DBMS name:      SQL SERVER 2000 [EXT]                        */
/* Created on:     2008-2-28 2:49:38                            */
/*==============================================================*/

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,
   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

EXECUTE sp_addextendedproperty 
N'MS_Description', N'主键ID', N'user', N'dbo', N'table', N'Employee', N'column', N'ID'
go

EXECUTE sp_addextendedproperty 
N'MS_Description', N'用户名', N'user', N'dbo', N'table', N'Employee', N'column', N'Username'
go

EXECUTE sp_addextendedproperty 
N'MS_Description', N'密码', N'user', N'dbo', N'table', N'Employee', N'column', N'Password'
go

如果你生成的SQL语句没有之后面这几条执行sp_addextendedproperty的语句,那么本次你将不能生成带注释的SQL语句,请仔细检查步骤及细节。
    第五步:执行PD生成的SQL语句,生成表结构。
        在查询分析器中执行生成的SQL语句后表结构如图:

完毕! 在Sybase AS Anywhere 7中同样的方法修改特征码之后也可以出来注释!至于其他的就没有一一测试了,大家有兴趣可以多试试,接下来研究名称+备注来生成数据库注释,但是苦于找不到资料,不知道如[%R%?[N]]等的语法,欢迎多指教。

转载:http://www.cnblogs.com/over140/archive/2008/02/28/1084327.html

时间: 2024-09-23 13:30:50

PowerDesigner 12 根据名称生成注释(完整示例)的相关文章

PowerDesigner 12.5 开启注释列 将Comment(注释)及Name(名称)内容互相COPY的VBS代码 根据名称生成注释(完整示例)

1,默认注释列也没有的,你需要把要它开出来.找到一个"三角型加一支笔"的那个按扭点一下,你就明白怎么加了.Comment列哦. 2   PowerDesigner中批量根据对象的name生成comment的脚本 执行方法:Open PDM -- Tools -- Execute Commands -- Run Script ---------------------------------------------------执行以下 Option Explicit Validation

PowerDesigner 12 根据名称生成注释(续)

前言     在上篇文章结尾的时候有说要研究实现[名称+备注来生成数据库注释],呵呵比较顺利的是写完那篇文章不久就把这个给鼓捣出来了,关于它里面那些怪怪的语法没有找到合适的资料,但是明白了一点,在里面直接写SQL语句还是可以的,所以得以顺利达到目的.关于PD配置及生成这里就不重复讲解了,下面进入正题. 正文    1.    修改当前DBMS(Script\Objects\Column\ColumnComment)位置的值如下: DECLARE @des VARCHAR(255)SET @des

Rafy 框架 - 为数据库生成注释

当开发者使用 CodeFirst 开发模式,编写了大量的实体类,在代码中编写了完整的类型注释和属性注释,并自动生成数据库后,往往需要把实体类型和实体属性上的注释同时生成到对应的数据库表及字段上.这样,即方便在查看数据库时能清晰地看到每一个表及字段的含义,也方便使用一些第三方的工具(如 PowerDesigner 等)为数据库生成较为全面的文档.   使用方法 在为数据库生成注释之前,需要保证数据库已经全部生成成功(即和实体保持一致).否则更新字段的注释时,可能因为字段不存在而导致执行失败. 需要

C#对Access进行增删改查的完整示例_C#教程

这篇文章整理了C#对Access数据库的查询.添加记录.删除记录和更新数据等一系列的操作示例,有需要的可以参考学习. 首先是AccessHelper.cs,网上有下载,下面附送一份: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.OleDb; using System.Data

JSP结合JavaBean生成静态页面示例

 JSP结合JavaBean生成静态页面示例1.为什么要做:节省不停操作数据库的开支,减少解析JSP页面的开支2.怎么做:很简单,就是利用文件操作,把需要的内容与现成的模板相合成再写入一个新的静态WEB页面就OK.3.功能扩展:这里只是利用文件写出的方式,将组合的HTML的内容写入到一个WEB页面里去,但是,为了引用,让其的页面知道有该页面的存在,我们还是得在数据库或者是静态页面里加上这个信息.为了简便,你这里就可以采用数据库,当然你要全部采用静态页面也可以,可能操作就复杂一点,不过,如果你能够

Keras R语言接口正式发布,同时公开20个完整示例

关于keras的介绍 Keras是一个高层神经网络API,为支持快速实验而生,目前主要功能如下: 支持相同的代码无缝跑在CPU或GPU上 对用户友好,易于快速prototype深度学习模型 支持计算机视觉中的卷积网络.序列处理中的循环网络,也支持两种网络的任意组合 支持任意网络架构:多段输入或多段输出模型.层共享.模型共享等.这意味着Keras 本质上适合用于构建任意深度学习模型(从记忆网络到神经图灵机) 兼容多种运行后端,例如TensorFlow.CNTK和 Theano 如果你已经很熟悉Ke

C连接MySQL数据库开发之Linux环境完整示例演示(增、删、改、查)

一.开发环境 ReadHat6.3 32位.mysql5.6.15.gcc4.4.6 二.编译 gcc -I/usr/include/mysql -L/usr/lib -lmysqlclient main.c -o main.out -I:指定mysql头文件所在目录(默认去/usr/include目录下寻找所用到的头文件) -L:指定mysql动态库文件所在目录(默认从/usr/lib目录查找) -l:链接libmysqlclient.so动态库 -o:生成的可执行文件名 三.完整示例 //

ViewPager详解(一)——ViewPager的基本使用完整示例

MainActivity如下: package cn.ww; import java.lang.reflect.Field; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.support.v4.view.ViewPager; import android.support.v4.widget.EdgeEffectCompat; import

FutureTask使用完整示例

MainActivity如下: package cc.cv; import java.util.concurrent.FutureTask; import android.os.Bundle; import android.app.Activity; /** * Demo描述: * FutureTask使用完整示例 * * FutureTask是一个Runnable的子类,在建立Thread对象时可将其作为参数传入 * * 详细步骤: * 1 建立实现了Callable接口的子类Callable