MySQL数据库管理

3.1外键
alter table 表 add constraint 约束名 foreige key(gradeid) references grade(gradeid);

数据库就是单纯的表,只能用来存储数据,只有行数据和列字段
我们想使用多张表的数据,想使用外键(程序去实现)

外键
强制不得使用外键与极联,一切外键概念必须在应用才能解决。
每次做delete 或者update都必须考虑外键约束,会导致开发的时候很痛苦,测试数据极为不方便。

3.2 DML语言

数据库的意义:数据存储,数据管理
DML 语言:数据库操作语言
insert
update
delete

3.3添加
语法:insert into 表名 ([字段1,字段2,…])values (‘值1’,‘值2’,‘值3’,…)
注意事项
1.字段与字段之间 英文逗号 隔开
2. 可以一一对应插入不能少 可以同时插入多条数据。
3. values后面得知,需要使用英文逗号隔开 values(),(),.,.,.,.

3.4修改
update修改谁 (条件) set 原来的值=新值
update 表名 set colnum_name = value where(条件)
条件:where 字句 运算符 id 等于某个值 ,大于某个值,在某个区间内修改。。。。。
update 表名 set colnum_name = value where(条件) between…and…
通过多个条件定位数据
UPDATE student SET name=‘长江7号’ WHERE name=‘狂神44’ AND xingbie=‘女’

3.5删除
语法:delete from 表名 [where 条件]

– 删除数据(避免这样写,会全部删除)
delete from student

– 删除指定数据
delete from student where id = 1;

truncate命令
作用:完全清空一个数据库表,表的结构和索引约束不会变。

– delete 的 truncate 区别
相同点:都能删除数据,都不会删除表结构
不同:
truncate 重新设置 自增列 计数器会归零
truncate 不会影响事务

CREATE TABLE test(
id INT(4) NOT NULL AUTO_INCREMENT,
coll VARCHAR(20) NOT NULL,
PRIMARY KEY (id)
)ENGINE=INNODB DEFAULT CHARSET=utf8
INSERT INTO test(coll) VALUES(‘1’),(‘2’),(‘3’)
DELETE FROM test–不会影响自增
TRUNCATE test– 自增回归零

了解即可: delete删除的问题,重启数据库,现象
innoDB 自增列会重1开始(存在内存当中的,断电及失)
mylsam 继续从上一个自增量开始(存在文件中的,不会丢失的)
4,DQL查询数据(最重点)
4.1,DQL(数据查询语言)
所有的查询操作都用它 select
简单的查询,复杂的查询它都能做
数据库中最核心的语言,最重要的语句

4.2指定查询字段
select STUDENTnO AS 学号,studentname as 学生姓名 from student as student

– 函数 concat (a,b)
select concat(‘姓名:’,studentname) as 新名字 from student
语法:select 字段。。。。 from 表
有的时候,列名字不是那么的见名之意。我们起别名 as 字段名 as 别名 表名 as 别名

去重 distinct
作用:select from result --查询全部的考试成绩
select student from result – 查询有哪些同学参加了考试
select distinct stundet from result --发现重复数据,去重。
数据库的列 (表达式)
select version() --查询系统版本
select 100
3-1 as 计算结果 --用来计算 (表达式)
select @@auto_increment_increment --查询自增的步长(变量)

–学员考试成绩 —+1分查看
select student,studentresult +1 as ‘提分后’ from result
数据库中的表达式: 文本值,列,null,函数,计算表达式,系统变量…==
select 表达式 from 表
符号
like使用 %
查询姓刘的 名字后面只有一个字用_
两个字__
名字中间的%家%
多个查询 in

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值