SQL Delta实用案例介绍

概述

本篇文章主要介绍SQL DELTA的简单使用。为了能够更加明了的说明其功能,本文将通过实际项目中的案例加以介绍。

主要容

Ÿ   SQL DELTA 简介

Ÿ   创建SQL DELTA项目

Ÿ   使用SQLDELTA 进行数据库结构同步

Ÿ   使用SQLDELTA进行数据库数据同步

Ÿ   生成数据报表

Ÿ   待续

SQLDELTA简介

SQLDELTA是一款便捷实用的数据库管理工具。使用它可以找到现在数据库项目与过去数据库的异同点。并可以使你的产品数据库与你的开发数据库同步,减少你因为同步数据库而进行复杂的工作。还有一个好处是你可以使用它的对比和同步功能来为你目前的项目创建一个供测试使用的数据库。可以批量的转移你的数据。

你可以从www.sqldelta.com上下载SQLDELTA工具。目前最新版本是SQL DELTA Version5.0。本文将采用SQL DELTA4 来做演示。

创建SQL DELTA项目

打开”SQL DELTA  4”程序,在”Projects”选项卡中,选择”New”,”Add New Project”,新建一个项目,为“JJKQ”。

通过右键新建的项目“Edit Project”,或者通过点击右边的向下箭头,可以编辑项目。

在项目中,源数据库和目标数据库配置如下图所示:

1 SQLDELTA新建项目

注意:在设置源数据库连接与目标数据库连接时,如果你是在一台机器上操作的话,务必确保两个数据库不同名,或是在不同的数据库实例下相同的数据库名,也可以使用虚拟机。

接着,点击图1 右下角的“Project Options”,选择要对比的对象,如图2

2选择对比的对象

点击“OK”

在图1所示的界面中,点击左上角或右下角的”Compare DataBase”,对比两个数据库中我们选择要对比的对象。

3 对比进度条

在对比过程中SQLDETAL还将连接数据库,此时可能再次要求你输入连接数据库的密码,如图4

4 输入数据库连接密码

使用SQLDELTA 进行数据库结构同步

选择选项卡“Structure”,将为我们列出源数据库和目标数据库的异同点,如图5

5 数据库对象对比结果

图5上半部分列出了数据库中的对象和对比的基本情况。下半部分则对每个对象对比的结果进行了详细的描述,其中=表示相同,<>表示不相同,三角号表示对象移动的方向:向左表示源数据库更新目标数据库,向右表示目标数据库更新源数据库。下面列举两个示例。

1:使用源数据库的表更新目标数据的表

选择图5种上半部分中type为数据表,statue为”<>”的行,对应的将在其下半部分显示出两个不同源的数据表结构哪里不一样,如图6所示”summary”选项卡中columns有1个”<>”。对应选择选项卡”Cols(1)”,如图7 所示,我们将看到,原来列sortname中数据类型不一样,源库中是varchar(50),目标库中是char(50)

 6

7

现在要使得目标库的sortname类型也为varchar(50),通过钩选图7上半部分的列表中对应的”Update”列中的钩选框(默认情况下是钩选的)。

点击图5中左上角的”Sync”同步图标。将生成数据库同步语句,此时你下图中右下角的”Run”按钮即可完成同步操作。

8 生成同步数据库的SQL语句

如果同步成功的话,会显示如下语句:

Updating dbo.attendanceinout Table

dbo.attendanceinout Table Updated Successfully

*** Script Completed For LHL-PC/SQLEXPRESS.lw_att2000 ***

说明更新目标表成功。

当我们关闭对话框时,SQLDELTA将再次进行一次数据库结构的比较,此时你将发现刚才不一样的表结构,已经同步,一样了。

例2:使用目标库中的存储过程更新源库中同构的存储过程。

查看两个存储过程的异同点方法,跟例1 相似,这不再赘述。不同地方如图9

9 存储过程语句不一样

现在如果我们直接按”Sync”按钮,则会使用源库的存储过程更新目标库的。此时我们可以通过使用

中的Direction按钮来改变要更新的库。

点Direction按钮,选择”Update on (local).lw_att2000”,其中(local).lw_att2000为源库。此时对象列表中的Action列对应的值,将由”Update on LHL-PC/SQLEXRESS.lw_att2000”变为” Update on (local).lw_att2000”。然后再使用”Sync”按钮同步。

注意:在同步SQL语句的时候,可以会同步错误。此时你只要稍微修改下生成的同步SQL语句,然后再要更新的库中运行即可。

使用SQLDELTA进行数据库数据同步

选择选项卡”Data”,点击”Wizard”按钮,选择需要对比的数据的表,注意选择的表必需要有主键,如图10,选择CHECKINOUT,主键为userid和checktime

10 选择要对比数据的表

可以选择”Next”根据自己的配置,对比数据,也可以直接进行对比。结果如图11

11 数据对比结果

上半部分列表中,列Identical表示相同的记录数,Different表示不同的记录数,Missing表示源表中有但目标表没有的记录数,Additional表示源表中没有但目标表中有的记录数。

如果此时我们要将目标表中的记录同步到源表中,只要按照结构对比示例2 中存储过程通过的过程一样。

生成数据报表

选择选项卡”Reports”

其中

Strucure是生成指定数据库的结构对象的报表

Comparison生成两个数据库结构对象对比结果的报表

Data生成两个数据库数据对比情况的报表

Combined是以上三者的组合选项。

待续

本文只是简单介绍了SQLDELTA的使用,一些高级的应用还有待我们去发掘使用。

SQL Delta实用案例介绍,很好的东西,帮了我不少忙的更多相关文章

  1. SQL Delta实用案例介绍

    概述 本篇文章主要介绍SQL DELTA的简单使用.为了能够更加明了的说明其功能,本文将通过实际项目中的案例加以介绍. 主要容 Ÿ   SQL DELTA 简介 Ÿ   创建SQL DELTA项目 Ÿ ...

  2. SQL Delta实用案例介绍 (对应软件)

    http://blog.csdn.net/hongdi/article/details/5363209

  3. awk 实用案例介绍

    awk 简介 • awk是 3 个姓氏的首字母,代表该语言的 3 个作者 • awk的版本有很多,包括: 旧版 awk,新版 awk(nawk), GNUawk(gawk)等 • awk程序有 awk ...

  4. 使用SQL Delta.v5.1.1.98.破解版同步数据结构

    概述 本篇文章主要介绍SQL DELTA的简单使用.为了能够更加明了的说明其功能,本文将通过实际项目中的案例加以介绍. 1. SQLDELTA简介 SQLDELTA是一款便捷实用的数据库管理工具.使用 ...

  5. InfluxDB 聚合函数实用案例

    InfluxDB 聚合函数实用案例 文章大纲 InfluxDB 简介 InfluxDB是GO语言编写的分布式时间序列化数据库,非常适合对数据(跟随时间变化而变化的数据)的跟踪.监控和分析.在我们的项目 ...

  6. Sql Server触发器案例(初学者学习案例)

    万事都是从最简单的一句“hello world”开始,所以我接下里介绍的sql触发器学习案例也从最简单的案例来说明分析: 1.首先创建表,这几张表你们也许很熟,在百度搜触发器案例都是使用这2张表 Cr ...

  7. JAVA实用案例之水印开发

    写在最前面 上周零零碎碎花了一周的时间研究水印的开发,现在终于写了个入门级的Demo,做下笔记同时分享出来供大家参考. Demo是在我上次写的 JAVA实用案例之文件导入导出(POI方式) 框架基础上 ...

  8. JAVA实用案例之图片水印开发

    写在最前面 上周零零碎碎花了一周的时间研究水印的开发,现在终于写了个入门级的Demo,做下笔记同时分享出来供大家参考. Demo是在我上次写的 JAVA实用案例之文件导入导出(POI方式) 框架基础上 ...

  9. JAVA实用案例之文件导出(JasperReport踩坑实录)

    写在最前面 想想来新公司也快五个月了,恍惚一瞬间. 翻了翻博客,因为太忙,也有将近五个多月没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六 ...

随机推荐

  1. ipkg-nas

    http://pkg.entware.net/binaries/x86-64/ https://forum.synology.com/enu/viewtopic.php?t=95346 http:// ...

  2. 布鲁克斯法则 (Brooks's Law)

    软件开发后期,添加人力只会使项目开发得更慢. 这个定律表明,在许多情况下,试图通过增加人力来加速延期项目的交付,将会使项目交付得更晚.布鲁克斯也明白,这是一种过度简化.但一般的推理是,新资源的增加时间 ...

  3. 使用apache 的 ab命令压力测试nginx服务器

    nginx压力测试方法: #ab命令 #安装ab #Centos系统 yum install apr-util #Ubuntu系统 sudo apt-get install apache2-utils ...

  4. beego 前后端分离登录验证

    conf>app.conf 文件添加一下参数 copyrequestbody=true sessionon =true routers>router.go 文件添加初始化路由 func i ...

  5. windows传文件到linux服务器--- secureCRT PK xftp

    背景: 需要从windows上传下载文件到aws虚拟服务器上并进行服务器环境搭建,由于secureCRT的局限性它只支持pub格式的密钥,不支持pem格式密钥,xshell是支持pem格式的,所以尝试 ...

  6. 找到树中指定id的所有父节点

    const data = [{ id: 1, children: [{ id: 2, children: [{ id: 3, }, { id: 4, }], }], }, { id: 5, child ...

  7. css中的浮动与定位

    传送门:https://www.cnblogs.com/junwuyao/p/7435257.html

  8. JSON HiJacking攻击

    JSON劫持类似于CSRF攻击,为了了解这种攻击方式,我们先看一下Web开发中一种常用的跨域获取数据的方式:JSONP. 先说一下JSON吧,JSON是一种数据格式,主要由字典(键值对)和列表两种存在 ...

  9. 【Java.Regex】用正则表达式查找Java源文件中的注释

    代码: package regex; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.I ...

  10. agentzh 的 Nginx 教程(版本 2019.07.31)

    agentzh 的 Nginx 教程(版本 2019.07.31) agentzh 的 Nginx 教程(版本 2019.07.31) https://openresty.org/download/a ...