sql杂记:一些坑和数据库恢复

这是一篇纯粹的乱七八糟的笔记。。。(勿喷)主要记录一下初入SQL坑的杂七杂八的注意事项。

一、先补充下事务的写法:

start transaction;#开始事务
    --各种事务...
commit;#将上述的事务一次性提交

当然如果小心翼翼防止一些错误的决定,可以:

start transaction;
    --各种事务...
rollback;#回滚命令,相当于以上各种事务没有执行

在DB2、Oracle中没有start transaction;,在SQLSEVER和PostgreSQL中是begin transaction;


二、字符类型

varchar是可变长度字符串,char是不可变长度字符串(用空格填充)


三、插入数据

如果想一次性插入多行数据:

insert into access_log values(col1,col2...),(col1,col2...),...
;

插入NULL时候,最好显性指明插入。

如果插入默认值,可以使用default关键词。


四、distinct函数

例如这句话:select count(distinct myID) from forLearn;可以发现,distinct要写在括号里面,先删除列中重复数据。否则先计算行数,再删除重复数据,得到的就是所有行数。


五、[数据库恢复]
教程1

教程2

Windows下启动mysqlbinlog

windows下启动MySQL:

posted @ 2017-08-09 12:20  AsuraDong  阅读(153)  评论(0编辑  收藏  举报