if else 语句
delimiter /
create function myfuntest(a int)
returns varchar(46)
begin
declare c varchar(45) default '';
if(a>0)
then set c = '大于0';
elseif(a=0)
then set c = '等于0';
else
set c = '小于0';
end if;
return c;
end /
delimiter ;
存储过程(无返回值通过参数返回)
delimiter /
create procedure mypro (a int)
begin
select * from student limit a;
end /
delimiter ;
call mypro(4);
drop procedure mypro;
触发器:一种特殊的存储过程,当指定时间发生时,系统自行调用。
触发器的两张表(new,old)
加强版平衡树:B+Tree
链式存储,方便读取范围内的数据。
聚簇索引(InnoDB):索引与内容是分开的。
非聚簇索引(MyTSAM):主键+辅助在一块
InnoDB有行锁,MyTSAM只有表锁。
事务的创建:create transaction;
commit;
create table bank
(
money double,
name varchar(45)
);
insert into bank values(100,'xiaozhang1');
insert into bank values(0,'xiaozhang2');
select * from bank;
start transaction;
update bank set money = money - 100 where name = 'xiaozhang1';
update bank set money = money - 100 where name = 'xiaozhang2';
commit;
rollback;