Mysql面试题

mysql事务的特性(ACID)

原子性/一致性/隔离性/持久性

 

事务的隔离级别( ISOLATION_DEFAULT 是mysql默认的隔离级别,spring默认使用数据库的隔离级别)

Mysql默认的事务隔离级别是可重复读(Repeatable Read)

读未提交                   脏读/不可重复读/幻读      很少用,性能好不了多少

读已提交 (oracle/sqlserver)      不可重复读/幻读         

可重复读(mysql)             幻读              确保同一事务的多个实例在并发读取数据时,会看到同样的数据行

串行化

 

不可重复读:因为同一事务在处理可能会有新的commit,所以同一select可能返回不同结果。

幻读:指当用户读取某一范围的数据行时,另一个事务又在该范围内插入了新行,当用户再读取该范围的数据行时,会发现有新的“幻影” 行

 

#视图:由select语句组成的虚拟表.不能对视图 增 ,可以改删,会相互影响基本表

CREATE VIEW v2 AS

SELECT d_name,e_id,e_name FROM employee e,department d

WHERE e.e_depart_id=d.d_id

SELECT * FROM v2

#存储过程:一次执行多条SQL处理业务

DELIMITER //

CREATE PROCEDURE pro1(IN pid INT)

BEGIN

DELETE FROM person WHERE id=pid;

DELETE FROM employee WHERE e_id=pid;

END

//

CALL pro1(1)

 

 

mysql添加索引

mysql创建表时添加索引:

CREATE  INDEX  age_index  ON person(age)

 

//普通索引

alter table table_name add index index_name (column_list) ;

//唯一索引

alter table table_name add unique (column_list) ;

//主键索引

alter table table_name add primary key (column_list) ;

SELECT NOW()

SELECT DATE(NOW())

SELECT CURTIME()

SELECT COUNT(*) FROM employee

SELECT AVG(e_age) FROM employee

SELECT ABS(-100)

SELECT SIN(3)

SELECT CONCAT("zhang","san")

SELECT SUBSTR("zhangsan",2,5)

 

drop,delete与truncate的区别

drop直接删掉表

truncate删除表中数据,再插入时自增长id又从1开始

delete删除表中数据,可以加where字句。

Mysql面试题

上一篇:09 spark连接mysql数据库


下一篇:oracle 12c RAC其中一节点内存率异常高