MySql教程

MySQL--sql(2) :

本文主要是介绍MySQL--sql(2) :,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1数据管理

1.1外键

外键概念

 如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。

外键的作用:

保持数据一致性,完整性,主要目的是控制存储在外键表中的数据,约束。使两张表形成关联,外键只能引用外表中的列的值或使用空值。

 注意:删除具有主外键关系的表时,要先删子表,后删主表

--删除外键

alter table my_stu drop foreign key class_id;

--删除索引

alter table my_stu drop index class_id;

1.2 DML语言

数据库意义:数据存储、数据管理

DML语言:数据操作语言

  • 用于操作数据库对象中所包含的数据
  • 包括:insert(添加数据语句),update(更新数据语句),delete(删除数据语句)

1.2.1 插入数据

--insert  添加数据

--insert into 表名[(字段1,字段2,字段2,...)] values ('值1','值2','值3',...)

--一次插入多条数据

insert into grade(gradename) values('大二'),('大三');

注意:(字段1,字段2,字段2,...)这部分可以省略,但添加的值要与表结构,数据列,顺序相对应,且数量一致

1.2.2 修改数据

--update 修改数据

update 表名 setx c=value [,column_name2=value2,...][WHERE condition]

说明:

  • column_name 为要更改的数据列
  • value 为修改后的数据,可以为变量,具体值,表达式或者嵌套select结果
  • condition 为筛选条件,如不指定,则修改所有列数据

where 条件字句(有条件的从表中筛选数据)

 举例:

--修改年纪信息
update grade set gradename = '高中' where gradeid =1;

1.2.3 删除数据

delete 删除数据

delete from 表名 [where condition];

--删除第五个数据
delete from grade where gradeid = 5;

 TRUNCATE 命令

TRUNCATE[TABLE]table_name;

--清空年级表TRUNCATEgrade

作用:用于完全清空表数据

注意:区别delete命令

  • 相同:都能删除数据,不删除表结构,但TRUNCATE速度更快
  • 不同:使用TRUNCATE TABLE重新设置AUTO_INCREMENT计数器,使用TRUNCATE TABLE不会对事务有影响

1.3 使用DQL查询数据

DQL(数据查询语言)

  • 查询数据库数据,如SELECT语句
  • 简单的单表查询或多表的复杂查询和嵌套查询
  • 套查询是数据库语言中最核心,最重要的语句
  • 使用频率最高的语句

select 语法

 

1.3.1 指定查询字段

--查询所有学生信息
select * from student;

--查询指定列(学号,姓名)
select studentno,studentname from student;

as 字句作为别名

--(as 关键字可以省略)
select studentno as 学号,studentname as 姓名 from student;

--as 也可为表取别名
select studentno as 学号,studentname as 姓名 from student as s;

 distinct 关键字的使用

作用:去掉select查询返回的记录结构中重复的记录(返回的所有列的值都相同),只返回一条

SELECT DISTINCT studentno FROM result;

--了解:DISTINCT去除重复项,(默认是ALL) 

先到这,后续补充再发

(学习内容来自狂神说的mysql 课程)

这篇关于MySQL--sql(2) :的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!