(一)mysql

(一) mysql
1.select deptno,count() from emp group by deptno haveing count() > 3;查询部门员工个数大于3的部门编号和员工个数。
select * from A left join B on A.id = B.id
update teacher set name=‘jame’ where name=“666”;
delete from 表 where 条件
insert into 表名 (列1, 列2) values (值1, 值2), (值3, 值4);
create table 表名()

select * from students order by age desc; —降序
select age, count() from students group by age; —按 age 分组,统计每个年龄的人数
select age, count(
) as count from students group by age order by count DESC;
—按 age 分组,并按每组的人数降序排序

2.where和having的区别
where 数据分组前(原始数据)
having 数据分组后(聚合结果)

3.数据库的三范式是什么?
第一范式:强调的是列的原子性,即数据库表的每一列都是不可分割的原子数据项。
第二范式:在第一范式的基础上,非主属性完全依赖于主属性.
第三范式:在第二范式的基础上,任何非主属性不依赖于其它非主属性。

3.什么是事务?
一组对数据库的操作。要么全部执行成功,要么全部执行失败。若是执行失败,会回滚到初始的位置。不会存在部分成功的情况。
事务是一个原子操作。是一个最小执行单元。可以由一个或多个SQL语句组成。
在同一个事务当中,所有的SQL语句都成功执行时,整 个事务成功,有一个SQL语句执行失 败,整个事务都执行失败。

  1. 事务有哪些特性?怎么根据这些特性去设计测试的?

A原子性:事务是不可分割的最小单元,要么全部成功,要么全部回滚
C一致性:事务执行前后,数据库从一个一致状态变为另一个一致状态。
I隔离性:并发事务之间互不干扰,避免脏读、不可重复读、幻读。
D持久性:事务提交后,修改永久保存,即使系统崩溃也不丢失

A测试部分操作失败时,是否完整回滚(如转账时扣款成功但存款失败,需检查余额是否恢复)
C验证违反约束的操作是否被阻止(如账户余额不能为负)
I 模

你可能感兴趣的:(mysql,数据库)