《MYSQL必知必会》读书笔记

来源:互联网 发布:mac绝对路径 编辑:程序博客网 时间:2024/05/22 13:33

1.除了通配符%,另一个通配符下划线(_),下划线最多只能匹配单个字符而不是多个字符。

2.在mysql的select语句中可使用concat()函数拼接两个列。如select concat(column1, ‘(’ , column2, ‘)’ ) from table 筛选出结果为column1(column2)

3.熟悉语句:show databases; show tables;
create database db1;drop database db1;
create table mytable
(id int not null auto_increment, name varchar(50) null,primarykey(id)
)engine=InnoDB;
update table1 set x= y;
delete from table1 where x = y;
insert into table1 (col1,col2) values (value1,value2)

4.有时,需要在检索出来的行中前进或者后退一行或多行。这就是使用游标的原因。在存储了游标之后,应用程序可以根据需要滚动或浏览其中的数据。创建游标:declare name cursor;打开/关闭游标open/close name;游标Fetch检索数据。

5.触发器在每个表中唯一,但在数据库中不一定唯一。

6.(Mysql5.0之前支持这种用法,之后就不支持了)创建触发器:create trigger name after insert on tableName for each row select ‘you insert a record’; 删除触发器:drop trigger name;

7.(Mysql5.0之前支持这种用法,之后就不支持了)insert触发器可引用一个名为NEW的虚拟表,访问被插入的行。Before Insert触发器中,NEW的值允许更新。例:create trigger neworder after insert on orders for each row select New.order_num;返回新的订单号。

8.Delete触发器,可以引用一个名为OLD的虚拟表,访问被删除的行。

9.delimiter @可以更改mysql结束标志。

10.触发器中执行的sql语句不能操作本表。

11.事务:指一组sql语句。
回退:指撤销指定sql语句的过程。
提交:指将未储存的sql语句结果写入数据库表。
保留点:指事务处理中设置的临时占位符,你可以对它发布回退(与回退整个事务处理不同)。

12.start transaction 标志事务的开始。ROLLBACK命令来回退mysql语句。

13.事务处理可以用来管理insert,update,delete,语句。不能回退select语句(没意义)。不能回退create和drop操作,事务处理块中可以使用这两条语句,但执行回退,它们不会被撤销。

14.在事务处理块中,提交不会隐含地进行。需要执行COMMIT语句。如:start transaction;delete from orderitems where order_num = 200; delete from orders where order_num = 200; commit; 使用事务处理块保证订单不被部分删除,最后的COMMIT语句仅在不出错时写出更改。如果第一条起作用,第二条失败。则delete不会提交(实际上它被自动撤销了)。

15.当COMMIT或者ROLLBACK执行之后,事务会自动关闭。

0 0
原创粉丝点击