1、mysql正则表达式

模式              描述

^                    匹配输入字符串的开始位置

$                    匹配输入字符串的结束位置

.                     匹配除“\n”之外的任何单个字符

[...]                 字符集合

[^...]                负字符集合

p1|p2|p3         匹配p1或p2或p3

*                      匹配前面的子表达式零次或多次

+                     匹配前面的子表达式一次或多次

{n}                   n是一个非负整数,匹配确定的n次

{n,m}               m和n均为非负整数,其中n<=m,最少匹配n次且最多匹配m次

2、mysql事务

mysql事务主要用于处理操作量大,复杂度高的数据。

在mysql中只有使用了InnoDB数据库引擎的数据库或表才支持事务;

事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行;

事务用来管理insert、update、delete语句

一般来说,事务必须满足4个条件(ACID)

原子性:一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。

一致性:在事务开始之前和事务结束知乎,数据库的完整性没有被破坏。

隔离性:数据库允许多个并发事务同事对其数据进行读写和修改的能力。

持久性:事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。

3、事务控制语句

begin或start transaction显示地开启一个事务;

commit;

rollback;

savepoint;

举例:

使用savepoint

savepoint savepoint_name;   //声明一个savepoint

rollback to savepoint_name;      //回滚到savepoint

release savepoint savepoint_name;  //删除指定保留点

release savepoint;

rollback to identifier;

set transaction

mysql事务处理方法主要有两种

(1)用begin,rollback,commit来实现;

(2)直接用set来改变mysql的自动提交模式

set autocommit=0  禁止自动提交

set autocommit=1  开启自动提交

4、mysql alter命令

添加字段:

alter table table_name add field2 int;

 

删除字段:

alter table table_name drop field2;

 

指定新增字段位置-first

alter table table_name add i int first;

 

执行新增字段位置,某字段之后,after

alter table table_name drop i int after c;

 

修改字段名称及类型:

alter table table_name modify c char(10);

alter table table_name change i j integer;

 

alter table对null值和默认值的影响

alter table table_name modify j bigint not null default 100;

 

修改字段默认值

alter table table_name alter i set default 1000;

 

删除默认值

alter table table_name alter i drop default;

 

修改数据表类型

alter table table_name engine=myisam;

 

修改表名

alter table table_name rename to new_table_name;

 

alter使用笔记

alter table table_name engine=myisam;      //修改存储引擎,修改为myisam

alter table table_name drop foregin keyname; //删除外键约束

alter table table_name modify name1 type1first|after name2;