有一说一,DataGrip真得牛逼,只是很多人不会用而已~

最近,被同事安利了一款数据库客户端工具:DataGrip,大爱!

其实,这个标题的话肯定会引出一些杠精,为了不给杠精留机会,多做一点说明:Navicat 和 DataGrip 都是非常优秀的数据管理工具,各有所长,这里就不做对比了!你喜欢什么样的风格用什么样的产品,就我个人而言更喜欢 DataGrip 一些。 把杠精安排得明明白白!

DataGrip 版是由 JetBrains 公司(就是那个出品 Intellij IDEA 的公司)推出的数据库管理软件。如果你不爱折腾的话,这家公司出品的很多 IDE 都是你的最佳选择,比如你进行 Python 开发的可以选择 JetBrains 全家桶中的 PyCharm 。

DataGrip 支持几乎所有主流的关系数据库产品,如 DB2、Derby、H2、MySQL、Oracle、PostgreSQL、SQL Server、Sqllite 及 Sybase 等,并且提供了简单易用的界面,开发者上手几乎不会遇到任何困难。

我相信,当你第一眼看到 DataGrip 以后,会有一种惊艳的感觉,就好比你第一眼看到一个姑娘,就是那么一瞥,你对自己说,就是她了!废话不多说,来看看 DataGrip 的常用功能。

DataGrip 下载链接如下 jetbrains.com/datagrip/。安装过程也很简单,双击安装,下一步,中间会让你选择主题,本人选择的是经典的 Darcula,安装完成后,启动,界面如下

相信使用过IDEA的同学会感到很亲切。接下来管理数据库驱动。DataGrip支持主流的数据库,File->DataSource

也可以在Database视图中展开绿色的+号,添加数据库连接

选择需要连接的数据库类型

在面板中,左上部分列出了已经建立的数据库连接,点击各项,右侧会展示当前连接的配置信息,General面板中,可以配置数据库连接的信息,如主机、用户名、密码等,不同数据库配置信息不完全相同,填入数据库URL,注意,URL后有个选项,可以选择直接填入url,那么就不需要单独填主机名、端口等信息了。

Driver部分显示数据库驱动信息,如果还没有下载过驱动,底部会有个警告,提示缺少驱动

点击Driver后的数据库类型,会跳转到驱动下载页面,点击download,下载完会显示驱动包

如果下载的驱动有问题,可以手动添加本地驱动包,在使用过程中,创建Oracle连接时,下载的驱动包就有问题,提示缺少class,点击右侧绿色的+号,选择本地下载好的jar包,通过右侧上下箭头,将导入的jar包移到最上位置就OK了

点击Test Connection,查看配置是否正确,接下来就可以使用了。

打开DataGrip,选择File->Settings,当前面板显示了常用设置项

基本上默认设置就足够了,要更改设置也很简单,左侧菜单已经分类好了,第一项是数据库相关的配置,第二项是配置外观的,在这里可以修改主题,key map修改快捷键,editor配置编辑器相关设置,在这里可以修改编辑器字体,展开edit项,Editor->Color & Fonts->Font

需要将当前主题保存一下,点击save as,起个名,选择重命名后的主题就能修改了,这里我选择习惯的Conurier New字体,大小为14号,点击右下角的apply,点击OK

其他的没啥好设置的了。

接下来,我们来使用DataGrip完成数据库的常用操作,包括查询数据、修改数据,创建数据库、表等。

左上区域显示了当前数据库连接,展开后会显示数据库表等信息,如果展开后没有任何信息,需要选中数据库连接,点击上面的旋转图标同步一下,下方有个More Schema选项,点击可以切换不同的schema。

右键选中的数据库连接,选择open console,就可以在右侧的控制台中书写sql语句了。

DataGrip的智能提示非常爽,无论是标准的sql关键字,还是表名、字段名,甚至数据库特定的字段,都能提示,不得不感叹这智能提示太强大了,Intellij IDEA的智能提示也是秒杀eclipse。

写完sql语句后,可以选中,点击左上侧绿色箭头执行

也可以使用快捷键Ctrl+Enter,选中情况下,会直接执行该sql,未选中情况下,如果控制台中有多条sql,会提示你要执行哪条sql。之前习惯了dbvisualizer中的操作,dbvisualizer中光标停留在当前sql上(sql以分号结尾),按下Ctrl+.快捷键会自动执行当前sql,其实DataGrip也能设置,在setting->Database-General中

语句执行时默认是提示,改成smallest statement后,光标停留在当前语句时,按下Ctrl+Enter就会直接执行当前语句。

语句的执行结果在底部显示

如果某列的宽度太窄,可以鼠标点击该列的任意一个,使用快捷键Ctrl+Shift+左右箭头可以调整宽度,如果要调整所有列的宽度,可以点击左上角红框部分,选择所有行,使用快捷键Ctrl+Shift+左右箭头调整

添加行、删除行也很方便,上部的+、-按钮能直接添加行或删除选中的行,编辑列同样也很方便,双击要修改的列,输入修改后的值,鼠标在其他部分点击就完成修改了

有的时候我们要把某个字段置为null,不是空字符串"",DataGrip也提供了渐变的操作,直接在列上右键,选择set null

对于需要多窗口查看结果的,即希望查询结果在新的tab中展示,可以点击pin tab按钮,那新查询将不会在当前tab中展示,而是新打开一个tab

旁边的output控制台显示了执行sql的日志信息,能看到sql执行的时间等信息

我就问这么吊的工具,还有谁!!!

要新建表也是相当简单、智能,选中数据库连接,点击绿色+号下选择table

在新打开的窗口中,可以填写表信息

我就问你看到这个窗口兴奋不兴奋!!!

顶部可以填写表名、表注释,中间可以点击右侧绿色+号添加列,列类型type也是能自动补全,default右侧的消息框图标点击后能对列添加注释,旁边的几个tab可以设置索引及外键

所有这些操作的DDL都会直接在底部显示

我就问你怕不怕

表建完后,可以点击下图中的table图标,打开表查看视图

可以查看表的数据,也能查看DDL语句

这些基本功能的设计、体验,已经惊艳到我了,接下来就是数据的导出。

DataGrip的导出功能也是相当强大

选择需要导出数据的表,右键,Dump Data To File

即可以导出insert、update形式的sql语句,也能导出为html、csv、json格式的数据

也可以在查询结果视图中导出

点击右上角下载图标,在弹出窗口中可以选择不同的导出方式,如sql insert、sql update、csv格式等

如果是导出到csv格式,还能控制导出的格式

导出后用excel打开是这种结果

除了能导出数据外,还能导入数据

选择表,右键->Import from File,选择要导入的文件

注意,导出的时候如果勾选了左侧的两个header选项,导入的时候如果有header,也要勾选,不然会提示列个数不匹配

1、关键字导航:

当在datagrip的文本编辑区域编写sql时,按住键盘Ctrl键不放,同时鼠标移动到sql关键字上,比如表名、字段名称、或者是函数名上,鼠标会变成手型,关键字会变蓝,并加了下划线,点击,会自动定位到左侧对象树,并选中点击的对象

2、快速导航到指定的表、视图、函数等:

在datagrip中,使用Ctrl+N快捷键,弹出一个搜索框,输入需要导航的名称,回车即可

3、全局搜索

连续两次按下shift键,或者鼠标点击右上角的搜索图标,弹出搜索框,搜索任何你想搜索的东西

4、结果集搜索

在查询结果集视图区域点击鼠标,按下Ctrl+F快捷键,弹出搜索框,输入搜索内容,支持正则表达式、过滤结果

5、导航到关联数据

表之间会有外键关联,查询的时候,能直接定位到关联数据,或者被关联数据,例如user1表有个外检字段classroom指向classroom表的主键id,在查询classroom表数据的时候,可以在id字段上右键,go to,referencing data

选择要显示第一条数据还是显示所有数据

会自动打开关联表的数据

相反,查询字表的数据时,也能自动定位到父表

6、结果集数据过滤

对于使用table edit(对象树中选中表,右键->table editor)打开的结果集,可以使用条件继续过滤结果集,如下图所示,可以在结果集左上角输入框中输入where条件过滤

也可以对着需要过滤数据的列右键,filter by过滤

7、行转列

对于字段比较多的表,查看数据要左右推动,可以切换成列显示,在结果集视图区域使用Ctrl+Q快捷键

1、变量重命名

鼠标点击需要重命名的变量,按下Shift+F6快捷键,弹出重命名对话框,输入新的名称

2、自动检测无法解析的对象

如果表名、字段名不存在,datagrip会自动提示,此时对着有问题的表名或字段名,按下Alt+Enter,会自动提示是否创建表或添加字段

3、权限定字段名

对于查询使用表别名的,而字段中没有使用别名前缀的,datagrip能自动添加前缀,鼠标停留在需要添加别名前缀的字段上,使用Alt+Enter快捷键

4、*通配符自动展开

查询的时候我们会使用select 查询所有列,这是不好的习惯,datagrip能快速展开列,光标定位到后面,按下Alt+Enter快捷键

5、大写自动转换

sql使用大写形式是个好的习惯,如果使用了小写,可以将光标停留在需要转换的字段或表名上,使用Ctrl+shift+U快捷键自动转换

6、sql格式化

选中需要格式化的sql代码,使用Ctrl+Alt+L快捷键

datagrip提供了一个功能强大的编辑器,实现了notpad++的列编辑模式

1、多光标模式

在编辑sql的时候,可能需要同时输入或同时删除一些字符,按下alt+shift,同时鼠标在不同的位置点击,会出现多个光标

2、代码注释

选中要注释的代码,按下Ctrl+/或Ctrl+shift+/快捷键,能注释代码,或取消注释

3、列编辑

按住键盘Alt键,同时按下鼠标左键拖动,能选择多列,拷贝黏贴等操作

4、代码历史

在文本编辑器中,邮件,local history,show history,可以查看使用过的sql历史

命令历史

(0)

相关推荐

  • 【Access】SQL语句中内连接的使用

    大家好,上次课程我们讲了自然连接的使用,本节课再跟随小编来学习一下内连接.内连接的效果和等值连接是一样的,只不过在Access数据库中的操作不一样罢了,这里先放上内连接的SQL语法格式: SELECT ...

  • kettle

    上一节:kettle--(1)介绍和Execl输出举例 最近公司在做数据总线的工作,需要用kettle这个ETL工具,所以花了一些时间来研究研究,喜欢的话点个赞 kettle抽取一个数据库中数据,同步 ...

  • 卸载 Navicat!事实已证明,正版客户端,它更牛逼……

    重磅干货,第一时间送达 来源公众号:搜云库技术团队(http://ii078.cn/Lz2A7X) 参考:https://blog.csdn.net/weixin_40959890 DataGrip ...

  • 42+12+17!6.9秒准绝杀!真塔马牛逼!他扛着湖人在前进,詹眉都给我躺好了

    小球童 对于球的理解,我是天才 我有李宁,你有关注我吗? 今日分享 常规赛临近尾声 各支球队都在争取搭上季后赛末班车 尤其是在西部,简直就是硝烟弥漫,寸土必争 开拓者.独行侠.湖人.勇士.灰熊 每一场 ...

  • B 站,真滴牛逼

    互联网让信息更容易触达,但是由于信息过于庞大,筛选出有价值的信息所花费的精力也会很大. 众所周知,B 站是一个学习的网站,很多人在 B 站上大学.考研.学编程,但 B 站的视频资源那更是五花八门,要从 ...

  • 这 HTTPS,真滴牛逼!

    HTTPS 常用的密钥交换算法有两种,分别是 RSA 和 ECDHE 算法. 其中,RSA 是比较传统的密钥交换算法,它不具备前向安全的性质,因此现在很少服务器使用的.而 ECDHE 算法具有前向安全 ...

  • B 站,真滴牛逼!

    互联网让信息更容易触达,但是由于信息过于庞大,筛选出有价值的信息所花费的精力也会很大. 众所周知,B 站是一个学习的网站,很多人在 B 站上大学.考研.学编程,但 B 站的视频资源那更是五花八门,要从 ...

  • B站这个原创综艺节目,真太牛逼了

    每篇文章解决某行业或某人群的一个痛点 第198 期原创文章 By:小佳 周末的时光-我陪你度过 今天是国庆的第三天,我时不时还会刷到高速堵车的视频.再次印证了那句话:"花钱遭罪". ...

  • 今天这剧本真牛逼

    本以为今天的剧本是一致预期下低开一个多点,然后再拉回来,最终跌零点几个点,结果是开盘给跌零点几个点,收盘再反一致预期跌一个多点. 本以来今天是短期利空 VS 长期利好的多空交织,结果是连续三年五一节后 ...

  • 这位纸做的帅哥能让“时间暂停”?以为是傻逼,看完才知道真牛逼!

    落纸生花精选教程 · 第773期 小伙伴们有看过<JOJO的奇妙冒险>吗?今天小落给大家分享一个非常Q版可爱的纸模手办--<JOJO的奇妙冒险>空条承太郎!替身能力是时间暂停! ...

  • 俗语“鱼不蒜、肉不姜、牛不韭”真有道理!可惜很多人没搞懂含义

    我国的美食文化源远流长,可以说不管是什么样的食材,都能被我们钻研出花儿来,天南地北各种各样的美食应有尽有.但是不管在哪里,总少不了一些肉类,像鱼肉.牛肉这样的.有一种说法不知道大家听过没," ...

  • 《向日葵》真TM是一款牛逼的APP!

    前段时间刷微博,刷到这么一条话题: 两位老人因为不会使用手机通道,一位冒雨去交医保,被柜台拒收现金,只能无助地坐在那儿.另一位94岁高龄,行动不便,为了激活社保卡,被抬到银行进行视频认证. 多么令人揪 ...