- 浏览: 244911 次
文章分类
- 全部博客 (395)
- Tech (0)
- [随笔分类]心情 (95)
- [随笔分类]技术 (112)
- [随笔分类]管理心得 (13)
- [随笔分类]Code SOP (5)
- [随笔分类]望图知意 (11)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (8)
- [随笔分类]重构代码 (1)
- [随笔分类]童童 (2)
- Program (1)
- [随笔分类]看你知道不知道 (1)
- [网站分类]4.其他技术区 (31)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (21)
- [网站分类]9.求职招聘区(个人求职、企业招聘) (0)
- [随笔分类]昨日关注 (15)
- [网站分类]6.读书区(技术书籍阅读心得、书籍推荐) (3)
- [随笔分类]一步一个脚印 (2)
- [网站分类]网站管理区(网站管理方面的疑问、建议、意见, 寻求管理员帮助) (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (3)
最新评论
这部分内容和VB6的关系不大,但是确是困扰我的一个问题。
这几天在整理数据字典,以前的办法是用Excel来制作,一个一个的填写特别麻烦,制作到好说,关键就是一旦结果变更了,改来改去的麻烦死了。
后来改用数据库关系图来制作打印出来,看着还是那么回事情,但是表格的排序和查找太麻烦了,到底有没有好的办法呢?
当然有了,实际上在SqlServer中利用Sql语句就可以实现数据字典,但是就怕不知道。
代码如下:
--数据库字典生成脚本
USE DBNAME
SELECT
表名 = CASE WHEN a.colorder=1 THEN d.name ELSE '' END,
--字段序号=a.colorder,
字段名=a.name,
字段说明=ISNULL(g.[value],''),
--标识=CASE WHEN COLUMNPROPERTY(a.id,a.name,'IsIdentity')=1 THEN '√' ELSE '' END,
主键=CASE WHEN EXISTS (
SELECT 1 FROM sysobjects WHERE xtype='PK' AND name in (
SELECT name FROM sysindexes WHERE indid in(
SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid )))
THEN '√' ELSE '' END,
类型=b.name,
--占用字节数=a.length,
长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允许空=CASE WHEN a.isnullable=1 THEN '√' ELSE '' END,
默认值=ISNULL(e.text,'')
FROM syscolumns a LEFT JOIN systypes b on a.xtype = b.xusertype INNER JOIN sysobjects d ON a.id = d.id
AND d.xtype='U' AND d.name<>'dtproperties'
LEFT JOIN syscomments e ON a.cdefault=e.id LEFT JOIN sysproperties g on a.id=g.id
AND a.colid=g.smallid
ORDER BY d.name,a.id,a.colorder
GO
USE DBNAME
SELECT
表名 = CASE WHEN a.colorder=1 THEN d.name ELSE '' END,
--字段序号=a.colorder,
字段名=a.name,
字段说明=ISNULL(g.[value],''),
--标识=CASE WHEN COLUMNPROPERTY(a.id,a.name,'IsIdentity')=1 THEN '√' ELSE '' END,
主键=CASE WHEN EXISTS (
SELECT 1 FROM sysobjects WHERE xtype='PK' AND name in (
SELECT name FROM sysindexes WHERE indid in(
SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid )))
THEN '√' ELSE '' END,
类型=b.name,
--占用字节数=a.length,
长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允许空=CASE WHEN a.isnullable=1 THEN '√' ELSE '' END,
默认值=ISNULL(e.text,'')
FROM syscolumns a LEFT JOIN systypes b on a.xtype = b.xusertype INNER JOIN sysobjects d ON a.id = d.id
AND d.xtype='U' AND d.name<>'dtproperties'
LEFT JOIN syscomments e ON a.cdefault=e.id LEFT JOIN sysproperties g on a.id=g.id
AND a.colid=g.smallid
ORDER BY d.name,a.id,a.colorder
GO
呵呵,一切搞定。
相关资料:
发表评论
-
打包应该注意MDAC的安装次序
2005-11-14 16:06 928MDAC得打包通常都是很讨厌得,一直没有太好的办法。以前得解决 ... -
不要忽视细节,由调用一个SqlServer系统存储过程想到的
2005-11-22 13:21 594今天在调用SqlServer中的系统存储过程sp_droplo ... -
小毛病,大问题
2005-11-24 11:19 595今天用户抱怨,为什么数据库中条目的计数越来越大,而且清空数据库 ... -
CMD命令也要用好
2005-11-30 13:30 962以前一些程序需要执行 ... -
一步一个脚印-产品升级随笔(1)-vision
2005-12-18 08:17 639产品的维护和升级总是困扰着我,犯过很多的错误,吃过很多的亏,如 ... -
一步一个脚印-产品升级随笔(4)-波浪
2005-12-30 11:10 659产品的升级不是一次就可以完成的,需求会像洪水一样永远都不会停止 ... -
国民党的800万军队不是一天消灭的
2006-01-09 15:58 588这几天又去了一趟京城,刚刚回到家里,特别的疲惫,昨天美美的在家 ... -
还不如扔掉
2006-01-12 12:42 548周六、周日打算搬回学校的单身宿舍了,把租的房子退掉,但是屋子里 ... -
看你知道不知道之-全局对象
2006-02-10 12:49 623这几天在整理类库,想通过VB6来提供全局函数,将公司常用的函数 ... -
看你知道不知道之-为进程内部件设置基地址
2006-02-13 11:17 671在用Project Analyzer 进行 ... -
看你知道不知道之-Call转义序列
2006-02-14 13:00 598今天在整理代码的时候,需要修改一个函数,使这个函数可以通过AD ... -
看你知道不知道之-使用SET NOCOUNT优化存储过程
2006-02-15 14:51 737每次我们在使用查询分析器调试SQL语句的时候,通常会看到一些信 ... -
看你知道不知道之-你注意Where子句的次序了吗?
2006-02-16 08:12 574这个系列越来越多的是和SQL语句相关的问题了,因为这段时间工作 ... -
看你知道不知道之-用好sp_depends
2006-02-21 12:25 1100前几天检查一个兄弟写的存储过程,我想知道这个存储过程到底涉及到 ... -
今天20,明天21
2006-03-06 15:58 536这几天一直封闭,昨天刚刚放出来,感觉十分的疲惫。在封闭的过程中 ... -
重构代码-随笔(1)
2006-03-09 10:32 553原始代码: If txt ... -
干这行最重要的是要坐住板凳
2006-03-12 20:40 700我们周五的时候刚刚辞退的一个试用期员工,给我在QQ留言,内容大 ... -
看你知道不知道之-别惹我Msgbox的Title
2006-03-13 19:40 578在VB6中,MsgBox是比较讨厌的,我在整理代码的时候,通常 ... -
Windows Server 2003 R2 修复Windows Server 2003
2006-03-19 13:05 1159最近特别喜欢去反波上听平客的段子,有一些也下载到本地了,但是我 ... -
靠左侧通行
2006-03-23 08:15 708从小老师和父母就告诉我,一定要靠人行横道的右侧通行,我也是 ...
相关推荐
用友T3-通系列数据字典工具 用于数据开发,接口制作。方便查询各数据库字段名称及功能。
oracle数据字典制作流程
powerdesigner生成数据字典模板,powerdesigner生成数据字典模板,powerdesigner生成数据字典模板powerdesigner生成数据字典模板powerdesigner生成数据字典模板powerdesigner生成数据字典模板powerdesigner生成数据...
PowerDesinger数据字典制作(VBS和数据报表模块文件)
该工具主要是用于生成数据库的数据字典,瞬间生成,方便快捷。而且无需安装。非常小巧的工具
好用好用好用好用好用好用好用好用好用好用好用好用好用好用好用好用好用好用
假如您所在公司在数据库开发中不使用SyBase公司的PowerDesigner产品,那么PdmReader则可以从您的数据库中逆向获取表结构信息,为您制作数据字典。 <br> PdmReader还可以作为实用的ado客户端工具进行使用...
非常好用的一款数据库数据字典生成工具,数据字典输出文件格式为 Word的DOC文档,在数据库表字段很多的情况下,可以省去手工制作数据字典的麻烦。 本工具为.net版,在使用前就安装dotNetFramework1.1, 经我测试,...
mysql,PHP源码[其他类别]MYSQL数据字典制作工具_mysqldictPHP源码[其他类别]MYSQL数据字典制作工具_mysqldict
根据民政部2020年12月最新行政区域数据制作,保存格式为python字典;可直接用于程序中三级联动选择数据的制作;文件MD5 : 246A2EF9B7E7021A287C583FFB85EAA4 读取使用方法: read_dictionary = np.load('province....
表结构导出数据字典工具(支持HTML,DOC,CHM文件格式导出),可支持MYSQL,ORCLE,SQLSERVE 数据库
利用kettle工具进行原始字典和标准字典的映射,将原始数据进行标准化处理。
非常好用的一款数据库数据字典生成工具,数据字典输出文件格式为 Word的DOC文档,在数据库表字段很多的情况下,可以省去手工制作数据字典的麻烦。 目前仅支持 SQL数据库。
导出数据库说明文档(MySQL、SQL2005、Oracle),支持HTML、CHM、WORD格式数据说明文档导出,里面有操作说明。
PDMReader是浏览速查pdm(*.pdm)文件的免费工具软件,与SyBase公司的... 逆向获取表结构信息,为您制作数据字典。 辅助功能,比如SQL脚本生成,excel,word,html,xls,txt文件导出等。 数据字典和表结构的校对功能。
[其他类别]MYSQL数据字典制作工具_mysqldict.zip
假如您所在公司在数据库开发中不使用SyBase公司的PowerDesigner产品,那么PdmReader则可以从您的数据库中逆向获取表结构信息,为您制作数据字典。 <br> PdmReader还可以作为实用的ado客户端工具进行使用...
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。...【项目质量】:所有源码都经过严格测试,可以直接...
一键式导出CRM Form的属性、类型及关系导出工具