其实就是把复杂的sql语句定义为一个函数,定义好这个函数之后,只要咱们不修改,运行一次就可以一直使用。

公式

  1. 定义函数:
  2. delimiter // -- 声明结束符//
  3. CREATE PROCEDURE 函数名() -- 创建一个存储过程(函数)
  4. BEGIN -- sql语句开始
  5. sql语句
  6. end -- sql语句结束
  7. // delimiter; -- 声明结束符 ;
  8. 调用函数:
  9. call 函数名(); -- 调用刚刚定义的函数
  1. 例子:
  2. delimiter // -- 声明结束符//
  3. CREATE PROCEDURE insert_lianxi() -- 创建一个存储过程(函数)
  4. BEGIN -- sql语句开始
  5. INSERT INTO lianxi VALUES (2,"李四","男");
  6. end -- sql语句结束
  7. //
  8. delimiter; -- 声明结束符 ;
  9. call insert_lianxi(); -- 调用刚刚定义的函数

批量插入1000条数据

  1. delimiter //
  2. CREATE PROCEDURE fa11()
  3. BEGIN
  4. DECLARE num int ; -- 定义一个num的变量,int数字类型
  5. set num=1; -- 定义num=1
  6. while num <=10000 do -- num<=1000的时候,运行下面的sql语句
  7. INSERT into lianxi VALUES(num,"fanmao79","男" ); -- sql 语句
  8. set num=num+1; -- 每执行一次 num+1
  9. end while; -- 结束循环
  10. END -- 结束存储过程(函数)
  11. // delimiter;
  12. call fa11(); -- 调用函数

定位日志

bug日志存放在什么地方,每个软件都不一样,具体是由开发决定的,开发会告诉你
日志里面有什么:日期和时间,进程号,ip地址,日志级别,具体信息,(请求方法,参数)
日志级别:
debug:调试信息
info:输出信息
warn:警告信息
error:服务器报错

定位错误日志:时间,error,exception
定位的linux语句:
cat mall.log |grep 2022-01-17 -C10 | grep -i exception -C10 >log.txt

  • i 忽略大小写
  • Cn n代表数字,搜索上下n行