SQL - 数据操作语句

SQL - 数据操作语句

文章目录

  • SQL - 数据操作语句
    • 数据操作语言-DML
      • 1 新增
      • 2 修改
      • 3 删除
      • 4 清空
    • 数据类型
      • 1 数值类型
      • 2 字符串类型
      • 3 日期时间类型

数据操作语言-DML

概念:

  • DML(Data Manipulation Language), 数据操作语言。
  • 对数据表数据的增、删、改操作。

1 新增

**语法: **INSERT INTO 表名(列1, 列2, 列3…) VALUES(值1, 值2, 值3…);

代码演示:

新增一条数据:

# 新增一条数据
insert into student
(stu_id,stu_name,stu_age,stu_gender,stu_address,stu_born)
values(101,'张三',20,'男','北京昌平','2000-1-1');

新增多条数据:

# 新增多条数据
insert into student
values(102,'李四',21,'男','北京海淀','2000-1-1'),
	  (103,'张说',20,'男','北京朝阳','2000-1-1'),
	  (104,'张玖',20,'男','北京通州','2000-1-1'),
	  (105,'赵六',20,'男','北京大兴','2000-1-1'),
	  (106,'王五',20,'男','北京怀柔','2000-1-1'),
	  (107,'张利',20,'男','北京昌平','2000-1-1');

部分列添加数据:

# 部分列添加数据
insert into student(stu_id,stu_name,stu_address)
values(108,'刘备','四川'),(109,'曹操','河南'),(110,'孙权','哈尔滨');

注意:表名后的列名和VALUES里的值要一一对应(个数、顺序、类型)

2 修改

语法: UPDATE 表名 SET 列1=新值1 ,列2 = 新值2,… WHERE 条件;

代码演示:

# 2 修改
# 需求: 修改学号为101的 年龄加5 地址改为'北京昌平沙河'
update student set stu_age = stu_age+5, stu_address = '北京昌平沙河' where stu_id = 101;

注意:

  • SET 后多个列名=值。
  • 绝大多数情况下都要加WHERE条件,指定修改,否则为整表更新。

3 删除

**语法: **DELETE FROM 表名 WHERE 条件;

代码演示:

delete:

# 3 删除
# 需求: 删除学号为102的学生信息
delete from student where stu_id=102;

注意: 删除时,如若不加WHERE条件,删除的是整张表的数据。

4 清空

语法: TRUNCATE TABLE 表名;

代码演示:

truncate table:

# 使用 truncate table 表名 清空数据, 先删除表, 再新建表, 只能整表删除..
truncate table student;

注意: delete 和 truncate 的区别

DELETE是清空整张表的数据,不释放空间;TRUNCATE是把表销毁,再按照原表的结构创建一张新表,释放空间。
TRUNCATE速度比DELETE快。
DELETE属于DML语句,可以回滚,TRUNCATE属于DDL语句,不可以回滚。

数据类型

MySQL支持多种类型,大致可以分为三类:

  • 数值类型
  • 日期时间类型
  • 字符串类型

数据类型可以用来约束数据的类型。

1 数值类型

类型 大小 范围(有符号) 范围(无符号)
INT 4字节 (-2147483648,2147483647) (0,4294967295)
DOUBLE 8字节 (-1.797E+308,-2.22E-308) (0,2.22E-308,1.797E+308)
DOUBLE(M,D) 8字节 DOUBLE(5,2) ,-999.99-999.99 M表示位数最大值65,D表示小数位数
DECIMAL(M,D) 8字节 DECIMAL(5,2) ,-999.99-999.99 同上

2 字符串类型

类型 大小 用途
CHAR 0-255字符 定长字符串 char(10)10个字符。优点:查询速度快;缺点:浪费空间
VARCHAR 0-65535字符 变长字符串 varchar(10)10个字符 优点:节省空间;缺点:查询速度慢
BLOB 0-65535字节 存储二进制形式的文件数据
TEXT 0-65535字节 存储长文本文件数据

注: MySQL中每条记录最大长度64k。

3 日期时间类型

类型 大小 范围 格式 用途
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:00/2038 结束时间是北京时间 2038-1-19 11:14:07格林尼治时间 2038年1月19日 凌晨 03:14:07 YYYYMMDD HHMMSS 混合日期和时间值,时间戳

你可能感兴趣的:(从零学Java,sql,数据库,java)