Java登陆第二天——SQL之DML

发布时间 2023-11-09 18:57:33作者: ocraft

SQL语句

SQL概括起来可以分为以下四组。(都是SQL,因为功能的不同,为了更好学习划分了类别)

DDL——数据定义语言。用于定义数据的结构。 指的是增,删,改数据库
DML——数据操作语言。用于检索或修改数据。 指的是增,删,改数据
DQL——数据查询语言。用于查询各种形式的数据。 指的是查询数据
DCL——数据控制语言。用于定义数据库用户的权限。 指的是管理数据库权限

SQL大小写不敏感!!
SQL大小写不敏感!!
SQL大小写不敏感!!

全凭个人习惯

DML

专门用来操作数据的SQL。

--增,值和字段必须一一对应
insert into 表名 (字段名1,...) values(值1,...);

--查询某个表中所有字段,查询语句在DQL中详解
select * from 表名;

**栗子:在UserTest库中存在一数据表Pon,其格式如下:
image

要求插入两条数据:
张三,18;
李四;
最后查询所有字段**
SQL语句:

use UserTest;
show tables;
insert into pon (p_name,p_age) values("张三",18);
insert into pon (p_name) values("李四");
select * from pon;

程序运行结果:
image
查询证明一下有这张表。

--删,逻辑语句就是:字段名+逻辑运算符和某值,构成一个布尔表达式。
delete from 表名 where  逻辑语句;

--查询某个表中所有字段,查询语句在DQL中详解
select * from 表名;

--清空某表,清空表的一切数据 自增会归零 可以理解是先删除表然后创建一张一样的表
TRUNCATE 表名

常用的逻辑运算符

逻辑运算符 举例逻辑语句 运算符描述
= age = 10 相等(类似与Java中==)
> age > 10 大于,字符串比较根据ASCII码
< age = 10 小于
<> age <>10 不相等(类似与Java中!=)
IS NULL age IS NULL 为null
IS NOT NULL age IS NOT NULL 不为null
NOT age NOT 1
AND age X1 AND age X2 和 (X1,X2为另一个逻辑语句)
OR age X1 OR age X2 或 (X1,X2为另一个逻辑语句)
BETWEEN age BETWEEN 1 AND 3 在...之间

AND举例:age >3 and <1。

OR举例: age >3 or <1。

栗子:查询pon表的所有字段
删除p_age为空的字段。
最后再查询pon表的所有字段。

SQL语句:

select * from pon;
delete from pon where p_age is null;
select * from pon;

程序运行结果:
image

--改,逻辑语句就是:字段名+逻辑运算符和某值,构成一个布尔表达式。
--
update 表名 set 修改的字段和值1,... [WHERE 逻辑语句];
--不写where 逻辑语句会直接修改。

--查询某个表中所有字段,查询语句在DQL中详解
select * from 表名;

栗子:查询pon表的所有字段
修改p_age等于18的字段,其p_name修改为李四。
最后再查询pon表的所有字段。

SQL语句:

select * from pon;
update pon set p_name='李四' where p_age=18;
select * from pon;

程序运行结果:
image