MySQL基础操作

注:mysql是大小写不敏感的. 

1.数据库基础操作(展示)

//1.展示当前数据库
show databases;

//2.创建数据库
create database 数据库名;

//3.使用数据库
use 数据库名;

//4.删除数据库
drop database 数据库名;

2.SQL中基本类型

2.1 数值类型(整数和浮点型)

注:decimal和numeric是一样的,都是解决IEEE754的无法精确表述的痛点,以空间换精确

数据类型 大小 说明 对应java类型
BIT[ (M) ] M指定位
数,默认
为1
二进制数,M范围从1到64,
存储数值范围从0到2^M-1
常用Boolean对应BIT,此时
默认是1位,即只能存0和1
TINYINT 1字节 Byte
SMALLINT 2字节 Short
INT 4字节 Integer
BIGINT 8字节 Long
FLOAT(M, D) 4字节 单精度,M指定长度,D指定
小数位数。会发生精度丢失
Float
DOUBLE(M,
D)
8字节 Double
DECIMAL(M,
D)
M/D最大
值+2
双精度,M指定长度,D表示
小数点位数。精确数值
BigDecimal
NUMERIC(M,
D)
M/D最大
值+2
和DECIMAL一样 BigDecimal

 

2.2 字符串类型

数据类型 大小 说明 对应java类型
VARCHAR (SIZE) 0-65,535字节 可变长度字符串 String
TEXT 0-65,535字节 长文本数据 String
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据 String
BLOB 0-65,535字节 二进制形式的长文本数据 byte[]

注:varchar较为常用

2.3 日期类型

数据类型
说明 对应java类型
DATETIME 8 字 节 范围从1000到9999年,不会进行时区的
检索及转换。
java.util.Date、
java.sql.Timestamp
TIMESTAMP 4 字 节 范围从1970到2038年,自动检索当前时
区并进行转换。
java.util.Date、
java.sql.Timestamp

3.表基本操作

注:使用表之前一定得先选中数据库

//1.查看表结构
desc 表名;

//2.创建表
create table 表名(表参数);
//参数是先给名称后跟类型,以逗号分隔


//3.删除表
drop table 表名;

//4.注释
comment ''
-
#
都可以

4.数据表基础操作(增删查改)

4.1 增加

insert into 表名 values(列,列......); 这里列的数目和类型都得和表结构相匹配

//可以在表名前面显示写入你要添加哪些参数,也可以一次性添加多条数据
eg:insert into 表名 values(),(),();

MySQL基础操作_第1张图片 

4.2 查询(重点,不涉及源数据)

1.全列查询
    select * from 表名
2.指定列查询
    select 列名,列名 from 表名
3.查询带有表达式
    针对查询的结果进行计算
    运算过程都是不影响服务器硬盘上的原始数据的
4.查询的时候带上别名
    select 表达式 as 别名 from 表名
5.查询的时候进行去重
    select distinct 列名 from 表名  
6.排序
    select 列名 from 表名 order by 列名(asc ,desc )
写到前面的列优先级高,后面的列优先级低
7.条件查询
    select 列名  from 表名 where 条件;

条件:

比较运算符

运算符 说明
>, >=, <, <= 大于,大于等于,小于,小于等于
= 等于,NULL 不安全,例如 NULL = NULL 的结果是 NULL
<=> 等于,NULL 安全,例如 NULL <=> NULL 的结果是 TRUE(1)
!=, <> 不等于
BETWEEN a0 AND
a1
范围匹配,[a0, a1],如果 a0 <= value <= a1,返回 TRUE(1)
IN (option, ...) 如果是 option 中的任意一个,返回 TRUE(1)
IS NULL 是 NULL
IS NOT NULL 不是 NULL
LIKE 模糊匹配。% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字

逻辑运算符

运算符 说明
AND 多个条件必须都为 TRUE(1),结果才是 TRUE(1)
OR 任意一个条件为 TRUE(1), 结果为 TRUE(1)
NOT 条件为 TRUE(1),结果为 FALSE(0)

注:

1. WHERE条件可以使用表达式,但不能使用别名。
2. AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分

4.3 修改

update 表名 set 列名 = 值 where 条件;
举例:update exam_result set math = 80 where name = "孙悟空";

//同时改两个列
update exam_result set math = 60,chinese = 70 where name = "曹孟德";

4.4 删除


 


delete from 表名 where 条件;

你可能感兴趣的:(MySQL,mysql,数据库)