saptechnique

Better late than never. - 郭富

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

本人是做SBO开发与实施的。

在项目中经常遇到要对标准系统进行调整的需求。比如,我们只知道一个值出现,但是不知道他到底存在了哪个表哪个字段。而SBO的表总共有930多个,每个表一般都100到200个字段,人工查找几乎是不可能的。

于是,我做了一个SQL全库检查的工具。只需输入你想要查找到的值,就可以自动为你找出包含这个值的表和字段。这对分析业务逻辑执行情况非常用帮助。推荐大家使用。

程序运行界面如下图:

使用起来非常简单,只要输入数据库服务实例名、数据库用户、数据库密码,点击登录,那么就会自动列出该服务器上的所有数据库。选择一个数据库,在自由文本中输入要查找的值,就可以开始了。

如果,需要模糊匹配,只需打上自由文本下面的勾勾。

 

工作原理:

工作原理很简单。就是先查找所有的表,并根据表中的字段构建SQL语句。语句的数量是数据表和字段的乘积。

之后,对所有的语句逐一执行,并将检索出的结果列在中间的DataGridView中。结果中包含查找到该值的SQL语句。

由于之前使用的是DataTable,效率非常之低,查找900多个表,每个表大约有150个字段,估计要计算135000*2次。直到十分钟之后,也没有什么进展。后来,改用了DataReader,效率大大提升!这样的计算量,我的机器需要5分钟左右就可以了。对于数据表少的数据库,一般一分钟之内都可以搞定。

我的机器配置:

LENOVO THICKPAD T60。

CPU:T5500

MEM:2G

 

如果能给朋友们带来方便,欢迎大家使用。

如果需要源码,请联系我。

邮箱:guofumail@163.com

QQ:42319036

 

源码下载地址:https://files.cnblogs.com/saptechnique/SqlFullQuerys_Sourcecode.rar

可执行程序下载地址:https://files.cnblogs.com/saptechnique/SqlFullQuerys.rar

 

 

posted on 2010-02-05 10:21  guofu  阅读(3925)  评论(22编辑  收藏  举报