Mysql数据库教程
SQL语言的概念
• SQL是一种数据库查询和设计语言
• 使得数据库可以通过命令行的方式而非图形化界面的方式对表进行增删改查等操作
• SQL是一门独立的语言,java中可以嵌入SQL语言对数据库进行操作
DML语句
增INSERT
像表中插入数据 值和列:一一对应的关系
格式一:指定列
insert into 表名(列名1,列名2,列名3…) values(值1,值2,值3…)
格式二:
insert into 表名 values(值1,值2,值3…)
注:格式二得注意按表中默认的结构插入数据
格式三:一次性插入多条记录
insert into 表名 values(值1,值2,值3…),(值1,值2,值3…),(值1,值2,值3…)
注:如果插入的值是字符串类型或者时间日期,需要带引号’’
-- 向student表中插入一条数据
insert into student(sno,sname,sage,ssex) values(105,'SMITH',20,'男');
insert into student values(106,'LISA',19,'女');
-- 向student表中插入三条数据
insert into student(sno,sname,sage,ssex) values(107,'Spencer',19,'女'),(108,'MONA',19,'女'),(109,'ANDY',22,'男');
-- insert into student values(107,'Spencer',19,'女'),(108,'MONA',19,'女'),(109,'ANDY',22,'男'); 也正确
-- 向student表中插入一条记录(学生学号,姓名,性别)
insert into student(sno,sname,ssex) values(110,'ROB',18,'男');
删DELETE
删除表中的数据
格式一:删除表中所有的数据
delete from 表名;
格式二:有条件的删除数据
delete from 表名
where 删除条件;
-- 删除年龄大于等于20岁的学员信息
delete from student where sage>=20;
--删除student表中所有的数据
delete from student; -- 不可被删除,因为表中有外键约束,某列被从表sc引用
注:删除数据时,要考虑外键的影响
有时候题上会给多个条件来进行删除的操作:
1.多个条件同时满足: and
delete from 表名 where 条件1 and 条件2 and 条件3…;
2.多个条件,但是只需要满足其中一个即可:
delete from 表名 条件1 or 条件2 or 条件3…;
-- 删除性别是女,而且年龄小于20岁的学员信息
delete from student where ssex='女' and sage<20;
-- 删除性别是男,或者年龄大于20岁的学员信息
delete from student where ssex='男' or sage>20;
改UPDATE
修改表中的数据
格式一:针对一个列中的值进行修改
update 表名 set 列名=值;
格式二:针对多个列的值进行修改
update 表名 set 列名1=值,列名2=值,列名3=值…;
格式三:有条件的更新
update 表名 set 列名1=值,列名2=值,列名3=值… where 条件;
-- 把性别是男的年龄改成30
update student set sage=30 where ssex='男';
-- 把年龄改成25
update student set sage=25;
-- 把所有人的年龄都改成23,性别改为女
update student set sage=23,ssex='女';
在进行更新的过程中,也可以进行计算的操作:
-- 把学号是104的学生的年龄添加5岁
update student set sage=sage+5 where sno=104;
查SELECT
对表中数据的检索
查询语句的基本语法:
select 列名1,列名2,列名3… from 表名;
-- 查询student表中sno,sname,sdept,sage
select sno,sname,sage,sdept from student;
--查看course表中所有的内容
select * f