大数据——MySQL数据管理

外键

外键作用:在从表(子表)中指向主表(父表),主键的字段建表时指定外键约束。
创建外键:
constraint 外键名 foreign key (表1的字段) references 表2(表2的字段)
建表后修改:
alter table 表1 add constraint 外键名 foreign key (表1的字段) references 表2(表2的字段)

数据库数据管理

数据库意义

数据存储。
数据管理。

管理数据库数据方法

通过SQLyog等管理工具管理数据库数据。
通过DML语句管理数据库数据。

DML语言

DML(数据操作语言):
用于操作数据库对象中所包含的数据。
包括:
INSERT ( 添加数据语句 )
UPDATE ( 更新数据语句 )
DELETE ( 删除数据语句 )

添加数据

INSERT命令
在这里插入图片描述
字段或值之间用英文逗号隔开
“字段1, 字段2…”该部分可省略,但添加的值务必与表结构数据列顺序相对应,且数量一致
可同时插入多条数据,values 后用英文逗号隔开
示例一:
添加grade表数据。
使用INSERT语句向数据表grade添加数据。
向数据列 GradeName 中添加如下数据:
大一、大二、大三、大四。
语句展示:

insert into `grade`(`GradeID`,`GradeName`) 
values (1,'大一'),(2,'大二'),(3,'大三'),(4,'大四');

结果展示:
在这里插入图片描述
示例二:
添加student表数据。
使用INSERT语句向数据表student添加数据:
在这里插入图片描述
语句展示:

insert  into `student`(`StudentNo`,`StudentName`,`Sex`,`GradeID`,`Phone`,`Address`,
`Emaill`,`IdentityCard`) values
(1011,'郭靖','男',1,'13500000001','京','1@q.com','201202200202020202'),
(1012,'杨康','男',2,'12345678901','庄','10@q.com','201202200202020333'),
(1013,'李梅','女',3,'13500000004','京','3@q.com','201202200202020244'),
(1014,'黄药师','男',4,'123','wwwww',NULL,NULL),
(1017,'欧阳锋','男',4,'123','wwwww',NULL,NULL);

结果展示:在这里插入图片描述
示例三:添加数据。
需求说明:
使用INSERT语句为课程表subject添加数据
在这里插入图片描述
语句展示:

insert  into 
`subject`(`SubjectINO`,`SubjectName`,`ClassHour`,`GradeId`) 
values (1,'高等数学-1',120,1),
(2,'高等数学-2',110,2),
(3,'高等数学-3',110,3),
(4,'高等数学-4',130,4);

结果展示:在这里插入图片描述

修改数据

UPDATE命令:
在这里插入图片描述
column_name 为要更改的数据列
value 为修改后的数据,可以为变量、具体值、表达式或者嵌套的SELECT结果
condition为筛选条件,如不指定则修改该表的所有列数据

WHERE条件子句

简单理解为:
有条件地从表中筛选数据。
WHERE中的运算符:
在这里插入图片描述
示例四:
修改student表数据:
使用UPDATE语句修改student表数据
修改学号(StudentNo)为1013的学生记录
邮箱修改为student1013@bdqn.cn
语句展示:

UPDATE student SET Emaill='student1013@bdqn.cn' WHERE StudentNo=1013;

结果展示:在这里插入图片描述
示例五:修改数据:
需求说明:
将数据表subject中ClassHour大于110且GradeID为1的课时都减少10。
语句展示:

UPDATE SUBJECT SET ClassHour=ClassHour-10 
WHERE ClassHour>110 AND GradeId=1

结果展示:在这里插入图片描述

删除数据2-1

DELETE命令
在这里插入图片描述
注意:condition为筛选条件,如不指定则删除该表的所有列数据

删除数据2-2

TRUNCATE命令
用于完全清空表数据,但表结构、索引、约束等不变
在这里插入图片描述
区别于DELETE命令
相同:
都能删除数据、不删除表结构,但TRUNCATE 速度更快。
不同:
使用TRUNCATE TABLE重新设置AUTO_INCREMENT计数器。
使用TRUNCATE TABLE不会对事务有影响。

总结:

添加数据:

insert命令:
insert into 表名 values('值1','值2');

修改数据

update 表名 set 字段名=('值') where 筛选条件
(不加筛选条件就是修改所有)

删除数据

 delete命令:
    delete from 表名 where 筛选条件(不加where就是删除该表所有列的数据)
 truncate命令:
    truncate table 表名(用于完全清空表数据,但表结构、索引、约束等不变)
清空表数据,包括自增:truncate table 表名

筛选数据:where条件子句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值