大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
文章目录
Mysql使用时的注意事项
- 每日一条数据库操作语句都应该以
分号 ;
结尾,因为mysql支持换行操作 - mysql数据库对大小写不敏感,大小写皆可,通常关键字使用大写表示
- mysql数据库中哭的名称应该以英文字符或者一些符号起始,但是不允许以数字起始
- mysql数据库中哭的名称、表的名称、字段的名称都不能使用mysql关键字,比如create、database;如果非要使用,那就用反引号括起来
库的操作
查看mysql中的所有库:show databases;
创建库:create database 库名称;—-》create database if not exists 库名称;如果不存在该库,则创建
删除库:drop database 库名称;
选择使用数据库:use 库名称;
显示当前使用的数据库:select database();
数据类型
数值类型
MySQL支持所有标准SQL数值数据类型。
这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC)
,以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)
。
关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。
BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。
作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。
日期和时间类型
表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR
每个时间类型有一个有效值范围和一个”零”值,当指定不合法的MySQL不能表示的值时使用”零”值。
字符串类型
字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET
注意:char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。
CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。
BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。
BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。
有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。
表的操作
显示库中所有的表:show tables;
创建表:create table if not exists tb_stu(id int,name varchar(3),age int, birthdatetime);
查看表结构:desc tb_stu;
删除表:drop table tb_stu;
表中数据的增删改查基础
插入数据:insert
指定列插入:可以指定单独个一个或几个列信息进程插入,并且前缀列信息
insert [into] tb_stu(id,name) values (1,“韩云溪”);
全列插入:可以省略前缀的列信息,按照列顺序插入所有列的数据
insert [into] tb_stu values (1,“韩云溪”,21,“2000-03-19 12:00:00”);
多行插入:
insert [into] tb_name values(val1,val2…),(val1,val2…),…;
insert [into] tb_stu values (3,“三三”,17,now()),(4,“四四”,18,now());
查询数据:select
查询指定表中所有数据:select * from tb_name;
指定列查询:select name,birth from tb_stu;
排序查询:select * from tb_stu order by age [asc]/desc;按照年龄排序查询
默认为asc升序查询,desc为降序查询
多列排序:在第一列相同的情况下针对第二列进行排序:select * from tb_stu order by age ,id desc;
分页查询:通常搭配排序一起使用
select * from tb_stu limit m offset n;—–分页查询,每页显示m条数据,偏移到第n条开始显示m条数据(即从第n条起,显示一页)
查询字段为表达式:
select name,id+age from tb_stu;—-按照name和id+age的值分列查询
查询时,字段别名的使用:
select name,id+age [as] total from tb_stu; —–给id+age起了个别名叫total,as可以省略
去重:
select distinct age from tb_stu ;—–根据age查询,并对age去重
条件查询
按照一定的限制条件进行查询,限制条件通过where子句给出
例如:按照id>1的限制条件进行查询:select * from tb_stu where id>1;
where子句涉及的运算符:
另外还有:> = <(大于、等于、小于)可以和NULL进行比较
is NULL/is not NULL 可以用来判断是否为空
IN的使用:判断查询的数据是否是给予的多个选项之一
例如:select * from tb_stu where name in(“韩云溪”,“夏紫藤”);—–查询名字为韩云溪或夏紫藤的项,符合则显示,不符合则忽略
between A and B 的使用:查询范围介于AB两者之间项
select * from tb_name where id between 1 and 3; —–查询id介于1和3之间的项
LIKE 模糊匹配的使用:查询一个数据看起来像某个条件
select * from tb_stu where name like ‘韩%’;—–查询表中姓名以韩开头的项,%为通配符
逻辑运算符的使用:与and、 或or、 非not
select * from tb_stu where age>17 and age<22;—–查询表中年龄大于17并且小于22的项
修改数据:update
update tb_name set fields1=val1,fields2=val2 where condition;—-尤其注意不要忘了where限制条件,否则整张表的该列数据都会更改
删除数据:delete
delete from tb_name where condition;—-尤其注意不要忘了where限制条件,否则整张表的数据都会被删除
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/171519.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...