0.问题列表

  1. 游标使用时遇到的一个问题:变量与字段重名?
  2. Mysql事件中如何同时指定开始时间和执行周期?
  3. 查询每个月倒数第二天入职的员工?
  4. 有一段时间没有用MySQL了,连接时报错:
    Can’t connect to MySQL server on ‘localhost’

1.问题1-5解决方法

1)游标使用时遇到的一个问题:

  1. 出错代码:

    age和height一直取不到值,还以为是没加主键,最后发现是局部变量和游标结果集重名了,后面取到的都是游标中的字段名。
  2. 正确代码:

2)Mysql事件中如何同时指定开始时间和执行周期?
详细创建语法:

CREATE  
    [DEFINER = { user | CURRENT_USER }]  
    EVENT  
    [IF NOT EXISTS]  
    event_name  
    ON SCHEDULE schedule  
    [ON COMPLETION [NOT] PRESERVE]  
    [ENABLE | DISABLE | DISABLE ON SLAVE]  
    [COMMENT 'comment']  
    DO event_body;  

schedule:  
    AT timestamp [+ INTERVAL interval] ...  
  | EVERY interval  
    [STARTS timestamp [+ INTERVAL interval] ...]  
    [ENDS timestamp [+ INTERVAL interval] ...]  

interval:  
    quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |  
              WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |  
              DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}  

AT和EVERY同时只能有一个。

3)查询每个月倒数第二天入职的员工?
使用last_day()函数:表示当月的最后一天
SELECT * FROM hire WHERE hiredate=last_day(hiredate)-1;

4)很久没有Mysql连接报错:

  1. 命令行客户端连接报错:
    Can't connect to MySQL server on localhost (10061)
    
    Navicat客户端连接报错:
    Can't connect to MySQL server on localhost (10038)
    
    引起这俩的原因肯定是相同的。
  2. 原因:
    不知道为啥MySQ服务自动关闭了,打开就可以了。(尴尬)

最后更新: 2018年05月01日 20:13

原始链接: https://zjxkenshine.github.io/2018/04/02/MySQL遇到的问题总结/

× 请我吃糖~
打赏二维码