造轮子之数据库对比工具DataBaseComparer

摘要:
最近,同时维护了几个项目。有些项目是SqlServer的,有些项目是MySql的。DBA建议使用一种工具来比较在线和离线数据库。在使用它时,它常常半天都无法取得进展。我们简单地构建了一个轮子来对数据库表结构进行纯粹的比较。可以在表之间比较字段名称、类型和长度。这些差异将显示在差异中。运行程序的界面如下:下一步之后:这是差异显示界面,它使用树控件。空白表示库不存在。右键单击菜单支持生成单个字段

最近同时在维护好几个项目,有些项目是SqlServer的,另一些是MySql的,DBA推荐了一个线上库和线下库的对比工具,用的时候经常会在对比时,半天都没有进度。索性自己这次造个轮子,做了一个纯对比数据库表结构的工具,表之间可以对比字段名、类型、长度,出现这些不同就会显示在差异中。

程序运行的界面如下:

造轮子之数据库对比工具DataBaseComparer第1张

下一步之后:

造轮子之数据库对比工具DataBaseComparer第2张

这个是差异显示界面,用的是树形控件,空的地方说明这个库没有,右键菜单支持单个字段生成sql语句。

程序使用VS 2010 C# 开发,源代码已上传至 GitHub

免责声明:文章转载自《造轮子之数据库对比工具DataBaseComparer》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇在有已认证的公众号情况下,复用资质快速注册小程序,免除再次认证费用java远程调试下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[mysql] mysqldump 导出数据库表

1.mysqldump的几种常用方法: (1)导出整个数据库(包括数据库中的数据) mysqldump -u username -p dbname > dbname.sql (2)导出数据库结构(不含数据) mysqldump -u username -p -d dbname > dbname.sql (3)导出数据库中的某张数据表(包含...

Oralce表空间创建和管理

1.表空间的概述    1.表空间是数据库的逻辑组成部分。     2.从物理上讲,数据库数据存放在数据文件中;     3.从逻辑上讲,数据库是存放在表空间中,表空间由一个或者多个数据文件组成。   2.oracle的逻辑组成    1.oracle 的逻辑结构包含 表 空间 段 区 块         2.数据库是由表空间构成,表空间又是有段构成,段是...

MySQL、DM 行转列及字段去重(Group_Concat())

      最近在使用数据库迁移适配,由MySQL 库迁移到达梦数据库,其中进行行转列时,MySQL转换达梦sql语法有些问题,特记录。       在MySQL 下有Group_Concat(expr)  ,在达梦及神通数据库下如何转换,有没有同样或者类似功能的函数呢?请看下面记录。       MySQL中 Group_Concat(expr)  函数...

[转]基于SQL脚本将数据库表及字段提取为C#中的类

开发时,勉不了需要使用SQL直接与数据库交互,这时对于数据库中的表名及字段名会使用的比较多。如果每使用一次都复制一个,实在蛋疼。所以就考虑将其做成const常量。但是数据库中的表和字段相当多,一个一个敲,不但累,还有可能敲错。要保证正确,最好的办法当然是使用工具或者脚本。 这里提供一个SQL脚本的实现。 原理:获取数据库的表--->遍历每个表中的字段...

【宝塔linux】 导入mysql 大文件失败的问题

导入数据库有四种方法 1、宝塔网站自带的数据库导入 2、phpmyadmin导入 3、远程到linux服务器用导入命令 使用xshell进入到控制台 1、首先建空数据库 mysql>create database dbname ; 2、导入数据库 方法一: (1)选择数据库 mysql>use dbname ; (2)设置数据...

数据库出现中文乱码解决方法

遇到这样的问题,首先先不要着急,肯定是编码的问题,先检查下我们所使用表的编码方式,使用mysql命令: show create table 表名; 1.查看编码方式 中文的编码方式为gbk 或 UTF-8; 2.如果表的编码方式为gbk,则查看每个字段的编码方式 如果不为中文编码方式 则修改 ALTER TABLE `表名` CHANGE `列名` `列名...