JetBrains出品必属精品

2023-11-02

JetBrains出品必属精品 | 数据库工具DataGrip

使用背景

​ 笔者从业七八年,用过的数据库工具不下四五个,比如Toad for oracle、Navicat、plsql、workbench、sqlyog等。主要用到的数据库也就是oracle和mysql,其他的如sqlserver只是稍有接触。我之前从事的是电信行业的系统运维、研发,最近刚换到金融行业。现在这个工作日常开发中经常查的数据库就有三种,oracle、mysql、sqlserver,要是安装数据库工具,至少得安两三个,非常不方便。虽然Navicat也可以支持多数据源,但是用过一段时间,感觉非常不习惯,Navicat缺少很多快捷键设置,比如无需选中一行,ctrl+enter就可执行光标所在行的sql,比如sql语句快捷输入,s能带出select * from等。可能是toad用的时间比较长的缘故,这些操作已经深入骨子,感觉选中一行再执行很难受,输个s再用键盘选select也受不了。于是就想找一款操作方便,又支持多数据源的工具,就这样DataGrip出现在了我的认知中。

​ DataGrip是JetBrains出品的数据库管理工具,基于对JetBrains的信任,果断下载试用,从此一发不可收拾。官网地址如下:https://www.jetbrains.com/datagrip/

工具优势

1、最大的一个优势就是支持市面上几乎所有常用的数据库类型:PostgreSQL、MySQL、Oracle、SQL Server、Azure、Amazon Redshift、SQLite、DB2、H2、Sybase、Exasol、Apache Derby、MariaDB、HyperSQL、Snowflake、Cassandra、ClickHouse、Greenplum、Apache Hive、Vertica、MongoDB等,并且兼容性很好,他采用驱动的方式连接,不需要你电脑本地安装数据库环境。

2、官方有中文版插件,即使是新手也能比较快速的上手,插件安装方式同idea一样file-settings-plugins,搜索Chinese (Simplified) Language,点击install即可安装,安装后重启datagrip即可

在这里插入图片描述

3、人性化操作,犹如java开发使用idea一样的顺滑的操作,这种人性化操作几乎遍布各个方面,下面举几个我常用的

a)比如ctrl+alt+l进行sql语句格式化,快捷键和idea一致

b)输入表名支持模糊带出,比如t_test_person,我输入tp就能带出来,这对我这种记忆不好的真是太方便了,只需要记住表的部分信息就能很容易的找到

c)快捷输入,支持自定义设置,比如我输s,再按tab键,自动带出select * from

d)会话支持查看历史记录,不小心删除重要的语句也能找回来

e)其他人性化显示,比如sql语句,如果字段有误,会直接标红提示。insert语句,你选中内容,他会高亮显示出对应的字段。

f)在sql脚本中,对着表名ctrl+鼠标左键,可以快速定位表,然后对着表右键就可以进行各种操作

新手使用说明及常用设置说明

1、新增数据源,以mysql为例截图说明

文件–新建–数据源–选择mysql

在这里插入图片描述

在这里插入图片描述

填写完信息后,点击测试连接可以验证连接情况,点击确定即可创建数据源

2、快捷模板设置

如图,可以设置实时模板,比如s可以快速带出select * from

在这里插入图片描述

datagrip默认是tab键带出自动补全数据,如果习惯空格可以进行设置,将如图中的默认展开方式改为空格即可

3、执行快捷键设置

工具提供三种方案可自定义,这是我的设置,供参考

在这里插入图片描述

4、数据库菜单说明

在这里插入图片描述

对表的操作,只需要在表名右键,导入导出数据、查看表结构、建表语句等都可以很轻松的找到。另外在

sql脚本中,对着表名ctrl+鼠标左键,可以快速定位到这个图示位置

5、sql执行效果

在这里插入图片描述

总结说明

工具的使用需要自己不断摸索,他还有很多比较好用的功能,比如支持脚本将表对象转代码、支持样式的调整、格式化效果的调整等,如有必要可以研究一下,但是推荐此工具最重要的一个原因就是,即使不进行过多设置,他默认的就很好用。毕竟工具的使用最重要的是带来效率的提升。

最后…他和IDEA一样是收费的,但是你懂的(此处斜眼)。具体可以看我另一篇文章:强力推荐 | 十款IDEA插件 | 文末有惊喜。第十款插件会帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JetBrains出品必属精品 的相关文章

  • MySQL - 重命名列

    如何重命名 mysql 列help to content在我的桌子上tbl help mysql query ALTER TABLE tbl help CHANGE COLUMN help content 您必须在更改列语句中包含列的定义
  • 为什么 MySQL 将 é 与 e 视为相同?

    我使用 Django Web 应用程序将 Unicode 字符串存储在 MySQL 数据库中 我可以很好地存储 Unicode 数据 但是在查询时 我发现 and e被视为好像它们是同一个角色 In 1 User objects filte
  • MAMP Python-MySQLdb 问题:调用 Python 文件后 libssl.1.0.0.dylib 的路径发生变化

    我正在尝试使用 python MySQLdb 访问 MAMP 服务器上的 MySQL 数据库 当我最初尝试使用 python sql 调用 Python 文件来访问 MAMP 上的数据库时 我得到了image not found关于错误li
  • 将 php filter_var 与 mysql_real_escape_string 结合使用

    我想首先说 我意识到 PDO mysqli 是新标准 并且已被 SO 广泛覆盖 然而 在这种特殊情况下 我没有时间在启动客户端站点之前将所有查询转换为 PDO 以下内容已在网站上的大多数查询中使用 我可以补充一下 这不是我所使用的 user
  • 如何自动更新数据库中的记录?

    我有一个工作表 在其中插入新工作 该表还包含职位发布日期 默认情况下 当发生新插入时 作业状态为打开状态 现在 当作业超过 30 天时 我想将作业状态从开放更改为关闭 我该怎么做 尝试创建一个每天运行的事件 如下所示 CREATE EVEN
  • 如何在 Node.js 中使用 Winston 将日志存储到 mysql 数据库

    我正在使用 winston 为我的应用程序进行日志记录 我已经使用这个完成了文件传输 class LoggerHelper extends BaseHelper constructor cApp super cApp this props
  • 找时间通过 PHP 执行 MySQL 查询

    我在互联网上看到过这个问题 here http www phpbuilder com board showthread php t 2100256 and here http answers yahoo com question index
  • 如何使用 PHP 通过 JSON 发送 HTML 元素?

    以下功能 try query this gt pdo gt prepare SELECT FROM bookings WHERE TourID AND dTourDate and Status NOT LIKE Cancelled quer
  • MySQL LAST_INSERT_ID() 和 FOUND_ROWS()

    当 PHP 脚本每秒有数百个查询时会发生什么 它会影响这些函数吗 是否保证它们会返回当前脚本中最后一个插入语句中最后插入的 id 它会返回当前脚本中最后一次选择的行数吗 如果同时从另一个脚本进行新的插入或选择 在 FOUND ROWS 的情
  • 将 Python 列表(JSON 或其他)插入 MySQL 数据库

    所以我在Python中有一堆数组数据 嗯 相反 我有一个清单 我试图将此数组存储到 MySQL 数据库中的单个单元格中 我尝试使用 JSON 来序列化我的数据 但也许我不明白 JSON 是如何工作的 因此 在连接到我的数据库后 我尝试了上游
  • MySQL 查询中的窗口函数

    有没有办法在 SELECT 查询本身中动态地使用 MySQL 查询中的窗口函数 我知道在 PostgreSQL 中这是可能的 例如 下面是 PostgreSQL 中的等效查询 SELECT c server ip c client ip s
  • pyodbc 无法正确处理 unicode 数据

    我确实使用 pyodbc 成功连接了 MySQL 数据库 并且它可以很好地处理 ascii 编码的数据 但是当我打印使用 unicode utf8 编码的数据时 它引发了错误 UnicodeEncodeError ascii codec c
  • Symfony/Doctrine 重新排列数据库列

    当我使用doctrine schema update命令行生成表时 Doctrine 或Symfony 似乎想要添加一个命令来重新排列我的列 将键放在它出现的前面 我想知道是否 更希望在哪里 我可以禁用环境的这个 功能 所以当我去生成我的表
  • Mysql关于重复键更新+子查询

    使用这个问题的答案 需要 MySQL INSERT SELECT 查询具有数百万条记录的表 https stackoverflow com questions 662877 need mysql insert select query fo
  • MySQL 将表的校验和存储在另一个表中

    语境 我们有包含大量表的大型数据库 他们中的大多数 99 都使用innodb 我们希望有一个日常流程来监视哪个表已被修改 当他们使用 innodb 的值时Update time from SHOW table STATUS from inf
  • Chart.js - 使用 mysql 和 php 从数据库获取数据

    我正在尝试将静态数据转换为使用数据库结果 我将使用MySQL and PHP 示例代码 var randomScalingFactor function return Math round Math random 100 var lineC
  • 如何将变量设置为触发器 MYSQL 内存储过程的结果?

    我这里有一个小问题 我正在为我的数据库工作创建一个触发器 但我不知道如何在触发器内使用存储过程 我想将过程的结果保存在变量中 然后使用稍后在 IF 比较器上变量 这是我的代码 DELIMITER CREATE TRIGGER insert
  • 如何绑定值 INSERT INTO mysql perl

    我有下面的代码可以工作 但我需要知道如何绑定它们以确保安全 如果我只是将 new row 替换为 并将其放入执行中我收到错误 感谢您的帮助 foreach my field account field order new row param
  • 如何更新 MySQL 数据库中的两列?

    这不起作用 UPDATE customers SET firstname John AND lastname Smith WHERE id 1 用逗号分隔值 AND是一个逻辑运算符 它的位置是WHERE and ON条款 UPDATE cu
  • Unicode(希腊语)字符存储在数据库中,例如“??????”

    数据库中的希腊字符就像问号 我找不到解决办法 我使用 Java Swing 开发了一个应用程序 但是当我在 MySQL 中插入希腊字母时 就像问号一样 我将数据库排序规则更改为 utf8 并将列也更改为 utf8 我的项目编码设置为UTF

随机推荐

  • Axure动态布局,中部加入滚动条

    1 将部件设置为动态面板 然后再部件属性和样式中使用按需显示纵向滚动条 2 可以很好的处理因为内部页面过大挤占低端内容的问题
  • 解决Excel打开CSV文件中文乱码问题

    CSV打开乱码的处理方法 方法一 Excel的数据导入功能 方法二 CSV打开乱码的处理方法 CSV是用UTF 8编码的 而EXCEL是ANSI编码 由于编码方式不一致导致出现乱码 明白了原因之后 我们只需要把CSV文件的编码方式修改成与E
  • 第5章 数组 第3题

    题目 编写一个程序 输入一个字符串 输出其中每个字符在字母表中的序号 对于不是英文字母的字符 输出0 例如 输入为 acbf8g 输出为1 3 2 6 0 7 代码 include
  • 基础练习—矩阵乘法

    题目描述 给定一个N阶矩阵A 输出A的M次幂 M是非负整数 例如 A 1 2 3 4 A的2次幂 7 10 15 22 输入 第一行是一个正整数N M 1 lt N lt 30 0 lt M lt 5 表示矩阵A的阶数和要求的幂数 接下来N
  • excel或txt格式坐标到面图层(python)

    背景 现有如下图所示的多个界址点坐标 excel格式或txt格式 需求 根据大量界址点坐标转换为界址点坐标对应的面shp图层 解决思路 一 为方便处理首先将txt文件或excel文件转换为csv文件 逗号分割符 二 为方便理解和使用 我们将
  • python numpy的学习

    0 引入numpy import numpy as np 1 将list变成np a 1 2 3 4 5 6 b np array a 将list变成array a shape 2 3 2行3列 a shape 0 2 获取行数 a sha
  • 攻防世界之WEB新手练习区(更新至11)

    攻防世界之WEB新手练习区 目录 001 view source 002 get post 003robots 004backup 005cookie 006disable button 007simple js 008xff refere
  • FTDI FT2232H在嵌入式教学中的应用

    FT2232H是FTDI chip在2012年发布的一款高速USB转串行通信的协议转换芯片 作为第五代USB协议转串行总线通信协议的芯片 完全符合USB2 0规范 480Mb s 并且可以依靠编程的方式配置成为串行或者并行的其他总线接口规范
  • Pycharm无法正常安装第三方库的时候,有以下几条应对方法

    1 首先检查自己的环境变量是否配置正确 点击setting 点击 Python Interpreter 点击Add Interpreter 配置完毕之后再试一次从这里下载 如果还不行的话可以换其他方法 2 从cmd或Pycharm Term
  • 什么是EL表达式

    EL表达式 expression language 即表达语言 它是为了便于存取数据而定义的一种语言 JSP2 0之后才成为一种标准 形式 以 开头 以 结尾 通过PAGE指令来说明是否支持EL表达式 具体举例 声明可以使用EL表达式 如果
  • 【腾讯云 TDSQL-C Serverless 产品测评】全面测评TDSQL-C Mysql Serverless

    全面测评TDSQL C Mysql Serverless 文章目录 全面测评TDSQL C Mysql Serverless 前言 什么是TDSQL C Mysql Serverless 初始化 TDSQL C Mysql Serverle
  • 前车之覆,后车之鉴——开源项目经验谈

    前车之覆 后车之鉴 开源项目经验谈 本文发表于 程序员 2005年第2期 随着开源文化的日益普及 参与开源 似乎也变成了一种时尚 一时间 似乎大家都乐于把自己的代码拿出来分享了 就在新年前夕 我的一位老朋友 一位向来对开源嗤之以鼻的J2EE
  • 毕设 ssd tf_gpu2 predict.py 备份代码

    如图 代码所属 https github com bubbliiiing ssd tf2 怕到时候改坏了 unbelievable 不是 import time import cv2 import numpy as np import te
  • 数据结构顺序表和链表(超详细)

    线性表 线性表 linear list 是 n 个具有相同特性的数据元素的有限序列 线性表是一种在实际中广泛使 用的数据结构 常见的线性表 顺序表 链表 栈 队列 字符串 线性表在逻辑上是线性结构 也就说是连续的一条直线 但是在物理结构上并
  • Java中如何编解码

    继续学习Java Web的编解码章节 记录Java中如何把ISO 8859 GB 2312 GBK UTF 16 UTF 8编码进行编码 额 System out printf x int b i 这句代码没有懂 希望大家评论帮忙解决 pu
  • html嵌入地图

    一 打开 百度地图生成器 的网址 http api map baidu com lbsapi creatmap index html 复制代码 保存html 二 在需要地图的位置 插入这行代码 长宽大小可以自定义 三 效果
  • javaweb应用的MVC分层,开发太方便了!!!

    javaweb应用的MVC分层 让我们先来了解一下 MVC开发模式的组成吧 看完这张图 你有什么看法 知道了这样的开发模式后 动手创建一个工程吧 如图是根据上图创建的一个实例 当然有很多的优点 相对于javaweb的初级开发 优点 耦合性低
  • C++简介

    C 是一种计算机高级程序设计语言 由C语言扩展升级而产生 最早于1979年由本贾尼 斯特劳斯特卢普在AT T贝尔工作室研发 C 既可以进行C语言的过程化程序设计 又可以进行以抽象数据类型为特点的基于对象的程序设计 还可以进行以继承和多态为特
  • SpringFramework核心技术一(IOC容器:IOC容器和Bean介绍)

    题记 做技术还是得一步步慢慢来 先搞懂核心原理 一味的只会用 是没有未来的啊 在现在的区块链公司当带着大家做项目的时候 我就经常说作为一名工程师 一定不能浮于表面 如果想在技术这条路上走下去 懂原理才是根本 现在框架太多 但是Spring依
  • JetBrains出品必属精品

    文章目录 JetBrains出品必属精品 数据库工具DataGrip 使用背景 工具优势 新手使用说明及常用设置说明 总结说明 JetBrains出品必属精品 数据库工具DataGrip 使用背景 笔者从业七八年 用过的数据库工具不下四五个