MySQL第六天(sql解决方案)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/BIGSEACOMING/article/details/80642486

1.select concat(column1,'分隔符',column2) from tablename;将两个数据列合并显示


2.select substr(column,s,n) from tabmename;将字符串截取显示:字符串的第一个字符s=1;


3.month()和year()函数的使用:


其中time时数据表中定义的一个类型为timestamp的数据列。

4.select count(*),date_format(time,'%Y_%m') as timelist from my_student group by timelist;这样能统计不同年份不同月份的数据记录合计。date_format()函数是用于时间格式化的


5. 时间日期的输出格式:select date_format(time,'%M %d %Y') from my_student;


5.1:select time_format(time,'%H') from my_student;


6.mysql中的变量分为三种,1普通变量,2系统变量,3存储过程的变量:普通变量是以一个@开头的,在sql连接关闭时将失去内容,系统变量是以两个@@开头的,系统变量又分为两种,一种是对应当前的连接的系统变量,一种是对应整个服务器的变量。存储过程中的临时变量,这些变量只在存储过程中起作用。

7.对变量进行赋值:


8.变量的使用:select * from my_student where name=@setname;


9.锁定:myisam引擎使用的是锁定机制,而innodb使用的事务处理机制控制并发访问:


对于innodb数据表如果想要锁定整张表可以使用:lock table transactional;但是一般事务处理机制就够用了。

10.事务的隔离性:当有多个用户进行事务,在一个事务没有被提交之前所有的事务都正常运行,当有一事务提交,事务修改的数据影响到其他事务修改的数据,那么其他事务就会执行失败,但是如果整个事务没有提交,那么各个事务之间是相互独立的。

11.事务的控制:mysql默认是开启事务自动提交的,可以使用show variables like 'autocommit';命令进行查看。使用set autocommit=0关闭,使用 set autocommit =1开启;开始一个事务:start transtion或begin命令(这个命令暂时关闭自动提交),使用commit或则rollback来介绍这个事务。如果开始了一个事务,但是没有使用commit或则rollback结束这个事务,又开始了一个begin事务,前一个事务默认使用commit提交。如果执行一个事务遇到连接中断或者服务器断电,则使用rollback结束。折返点:可以在一个事务中设置折返点:savepoint name;当用户使用 rollback savepoint name时,此折返点之前的命令被提交,之后的命令被放弃。

猜你喜欢

转载自blog.csdn.net/BIGSEACOMING/article/details/80642486