一直使用er studion 来建数据库的模型图。 用了几年苦于 erstudion 不能生成带说明注释的sql 语句,每次生成实体之后都要自己去加注释。 今天根据外国朋友的资料找到了办法

需要自己建一段弘代码

Dim EntCount As Integer
Dim ColCount As Integer
Dim MyDiagram As Diagram
Dim MyModel As Model
Dim MyEntity As Entity
//下面这句不知道说明原因报错 去掉也没有关系
Dim MyAttribute As AttributeObjDim TableArray() As String
Dim ColArray() As String
Function getColumns(TableName As String )
Dim Indx As Integer
Dim count As Integer
count =
Indx =
Set MyEntity = MyModel.Entities.Item(TableName)
ColCount = MyEntity.Attributes.Count
ReDim ColArray( To ColCount) As String
For count= To ColCount
For Each MyAttribute In MyEntity.Attributes
If MyAttribute.SequenceNumber = count Then
If MyModel.Logical = True Then
If MyAttribute.HasLogicalRoleName = True Then
ColArray(Indx) = MyAttribute.LogicalRoleName
Else
ColArray(Indx) = MyAttribute.AttributeName
End If
Else
If MyAttribute.HasRoleName = True Then
ColArray(Indx) = MyAttribute.RoleName
Else
ColArray(Indx) = MyAttribute.ColumnName
End If
End If
MyAttribute.Definition = ColArray(Indx)
Indx= Indx +
End If
Next MyAttribute
Next count End Function Sub Main
Debug.Clear
Set MyDiagram = DiagramManager.ActiveDiagram
Set MyModel = MyDiagram.ActiveModel
Dim Indx As Integer
Indx =
EntCount = MyModel.Entities.Count -
ReDim TableArray( To EntCount) As String
For Each MyEntity In MyModel.Entities
If MyModel.Logical = True Then
TableArray(Indx) = MyEntity.EntityName
Else
TableArray(Indx) = MyEntity.TableName
End If
MyEntity.Definition = TableArray(Indx)
getColumns(TableArray(Indx))
Indx = Indx +
Next MyEntity End Sub

然后在tools里面 macro 里面新建一个 运行下 。就自动保存到er studion的macro 里面去了

其实不使用这外力的的情况下也是可以生成的 但是麻烦些 在新建字段名的时候选择

definition 标签选项 然后在里面写入注释 生成sql的时候也会生成带说明的sql语句

记得在生成物理模型的时候要勾选

sql 语句的时候EXECUTE sp_addextendedproperty N'MS_Description', '描述内容', N'user', N'dbo', N'table', N'表名', NULL, NULL

让er studio 生成带说明的sql的更多相关文章

  1. PowerDesigner15.1创建模型及生成带注释sql操作手册

    转自:http://blog.csdn.net/huiwenjie168/article/details/7824029 一.创建模型 操作:file-->new Model… 快捷键:ctrl ...

  2. 利用Vistual Studio自带的xsd.exe工具,根据XML自动生成XSD

    利用Vistual Studio自带的xsd.exe工具,根据XML自动生成XSD 1, 命令提示符-->找到vs自带的xsd.exe工具所在的文件夹 例如: C:\Program Files ...

  3. Visio2010建立ER图并直接导出为SQL语句

    Visio2010建立ER图并直接导出为SQL语句 2013年08月20日 ⁄ 综合 ⁄ 共 2581字 ⁄ 字号 小 中 大 ⁄ 评论关闭 建立数据库时我们需要考虑数据之间的关系,为了理清数据之间的 ...

  4. powerdesigner通过er图生成mysql执行文件

    PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一.Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesign ...

  5. Visual Studio 生成事件命令

    Visual Studio在生成项目工程前后,有时我们需要做一些特殊的操作,比如:拷贝生成的dll到指定目标下面等. 结合VS可以添加预先生成事件和后期生成事件,采用命令或bat批处理. 1.Visu ...

  6. Visor 应用之一 通过ER 设计生成数据库脚本和实体对象

    前言 Visor(http://www.visor.com.cn)   是一个基于HTML5 Canvas 开发的IDE 框架和设计开发平台,有关Visor的设计架构和技术应用,在以后的文章里会逐渐跟 ...

  7. visual studio 生成后事件 Post-Build Event

    提出问题:我们的解决方案中有两个可执行程序,主程序运行后,会通过process.start()打开多个子程序.调用process.start的时候,需要指定子程序的可执行路径,把子程序的可执行程序放到 ...

  8. MSSQL-Scripter,一个新的生成T-SQL脚本的SQL Server命令行工具

    这里向大家介绍一个新的生成T-SQL脚本的SQL Server命令行工具:mssql-scripter.它支持在SQL Server.Azure SQL DB以及Azure SQL DW中为数据库生成 ...

  9. 在EA中用ER图生成数据库

    ER图 E-R图也称实体-联系图(Entity Relationship Diagram).提供了表示实体类型.属性和联系的方法.用来描写叙述现实世界的概念模型. 实体就是看的见摸得着或者能被人感知接 ...

随机推荐

  1. jsk

    题目描述 码队的女朋友非常喜欢玩某款手游,她想让码队带他上分.但是码队可能不会带青铜段位的女朋友上分,因为码队的段位太高(已经到达王者),恐怕不能和他的女朋友匹配游戏. 码队的女朋友有些失落,她希望能 ...

  2. Vue之数据排序加签

    这篇随笔小编给大家带来的是数据排序加签: 所谓数据加签,就是把数据进行加密再传给后端,这样保证数据的秘密性.不容易被修改和获取:排序就是根据公司要求对字段进行排序,有些公司会把字段根据a-z排序,有些 ...

  3. Spring入门(二)

    Spring IOC&DI 控制反转(inversion of control):控制什么?什么反转? 我们都知道,传统的程序中,如果A类需要使用B类对象,会在程序中直接创建B类对象实例,此时 ...

  4. PHP72w安装

    PHP72w #  rpm  -Uvh   https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm #  rpm ...

  5. Spring BeanName生成规则

    1. XML方式 <bean class="com.fishblog.service.UserService"></bean> beanName: com. ...

  6. 关于windows cmd的一些便捷应用

    在同事的指点下,我学会了一种非常方便的进入路径的方法 在windows文件夹中直接打开到要执行的文件的位置,然后在我的电脑那个路径当中输入cmd 之后,cmd的对话框会弹出来,并且显示在当前路径下,这 ...

  7. Codeigniter 列出所有控制器和控制器的方法(类似路由列表)

    我的思路是: 读取控制器文件夹下的所有 php 文件 获取父级的控制器的方法的不应该出现在每个控制器的路由中,所以需要排除父级控制器的方法 读取 控制器文件夹下的 php文件的类名和方法 下面的代碼是 ...

  8. ReadWriteLock 如何使用?

    QReadWriteLock从名字看就知道是读写锁的意思.和QMutex一样,QReadWriteLock也是线程同步的一种工具.那么它有什么用呢?和QMutex又有什么区别呢?写个例子瞧一瞧. 特点 ...

  9. mongodb常用基本命令

    一.数据库常用命令 1.help查看命令提示 help db.help() db.test.help() db.test.find().help() 2.创建.切换数据库 use movies 3.查 ...

  10. Android 防止切换横屏闪退

    <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="ht ...