• PowerDesigner对列增加注释


    关于PowerDesigner的基本操作就不说了,大家可以去查下资料。用pd设计数据库模型生成数据库及字典,是大家都经常做的事情,但是在实际中,对与pd9.5有一点不方便的地方是关于列的注释不能在生成数据库的过程中生成,很麻烦。
    这里就主要解决这个问题,如果图片贴比较麻烦,大家可以按步骤自己做下就可以了。
    一、基本操作
    1.1。工具->资源->数据库管理系统(TOOLS->RESOUCES->DBMS)
    1.2。新建: 名称:随便取 复制来源:Microsoft SQL SERVER 2000,然后提示保存
    1.3。Script->Objects->Column->ColumnComment
       在值中输入以下的内容,保存即可。
       EXECUTE sp_addextendedproperty N'MS_Description', N'%COMMENT%', N'user', N'%OWNER%', N'table', N'%TABLE%', N'column', N'%COLUMN%'
    1.4。在生成数据库的时候选择刚才新建立的模板,注意这时的注释的选项也是灰色不可选的,真不知道sybase干吗要这么做,听说新版本12已经休正了,可以在生成数据库的时候选择。我认为9.5对我就已经够了,有喜欢尝新的朋友可以自己去尝试一下。


    二、扩充说明:
    2.1。对表增加注释
    在Script->Objects->Table->TableComment
    在值中输入以下保存
    EXECUTE sp_addextendedproperty N'MS_Description', N'%COMMENT%', N'user', N'%OWNER%', N'table', N'%TABLE%', NULL, NULL

    2.2。反向工程中对列级也生成注释
       同样操作上面的1.1和1.2的步骤
       在Script-Object-Column 在Column下找到 SqlListQuery,在值中输入保存
       {OWNER, TABLE, S, COLUMN, DTTPCODE, LENGTH, SIZE, PREC, COMPUTE, NOTNULL, IDENTITY, DOMAIN, DEFAULT, COMMENT, ExtIdentityIncrement, ExtIdentitySeed}

    select
    u.name,
    o.name,
    c.colid,
    c.name,
    case when (s.usertype < 100) then s.name else x.name end,
    c.prec,
    c.length,
    c.scale,
    z.text ,
    case (c.status & 8) when 8 then 'NULL' else 'NOTNULL' end,
    case (c.status & 128) when 128 then 'identity' else '' end,
    case when (s.usertype < 100) then '' else s.name end,
    v.text,
    CONVERT(varchar, ISNULL(p.[value], '')) AS text,
    case (c.status & 128) when 128 then ident_incr(u.name + '.' + o.name) else null end,
    case (c.status & 128) when 128 then ident_seed(u.name + '.' + o.name) else null end
    from
    dbo.sysusers u
    join dbo.sysobjects o on (o.uid = u.uid and o.type in ('U', 'S', 'V'))
    join dbo.syscolumns c on (c.id = o.id)
    left outer join sysproperties p on c.id = p.id and c.colid = p.smallid
    left outer join dbo.systypes s on (c.usertype = s.usertype and s.xtype = c.xtype and c.usertype >= 0)
    left outer join dbo.systypes x on (s.usertype > 100 and s.xtype = x.xtype and x.usertype not in (0, 18, 80) and x.usertype < 100)
    left outer join dbo.syscomments z on (z.id = o.id and z.number = c.colid)
    left outer join dbo.sysobjects d on (d.id = c.cdefault and d.category <> 0)
    left outer join dbo.syscomments v on (v.id = d.id)
    where 1 = 1
    [ and u.name = %.q:OWNER%]
    [ and o.name=%.q:TABLE%]
    order by 1, 2, 3

     

  • 相关阅读:
    浅谈Java中的hashcode方法
    framework
    js 去掉字符串最后一个逗号:笑死我了
    .net MVC4.0项目发布到阿里云虚拟主机中遇到的问题。
    Bootstrap学习第二天轮播插件
    Bootstrap学习第一天
    图灵机器人api的使用方法含微信版本和网页版
    sql.表值类型
    asp.net中的日志添加和未处理异常的记录
    C# 结构类型与类的区别
  • 原文地址:https://www.cnblogs.com/tippoint/p/1245268.html
Copyright © 2020-2023  润新知