存储过程
语法
DECLARE 变量 类型 DEFAULT 默认值;
SELECT 列名 INTO 变量名;
CREATE PROCEDURE 存储过程名(参数模式 参数名 参数类型)
BEGIN
存储过程体(合法的SQL语句);
END
示例
点击查看代码
CREATE PROCEDURE exa1(IN username VARCHAR(20), IN PASSWORD VARCHAR(20))
BEGIN
DECLARE result INT DEFAULT '';
SELECT COUNT(*) INTO result #赋值
FROM admin
WHERE admin.username = username
AND admin.password = PASSWORD;
SELECT IF(result>0, 'succ', 'fail');
END
CALL exa1(zhangfei,'666666');
---
CREATE PROCEDURE exa2(IN beautyName VARCHAR(20), OUT boyName VARCHAR(20))
BEGIN
SELECT bo.boyName INTO boyName
FROM boys bo
INNER JOIN beauty b
ON bo.id = b.boyfriend_id
WHERE b.name = beautyName;
END
SET @bName
CALL exa2('xiaozhao',@bName);
---
CREATE PROCEDURE exa3(INOUT a INT, INOUT b INT)
BEGIN
SET a=a*2;
SET b=b*2;
END
函数
CREATE FUNCTION 函数名(参数列表) RETURN 返回类型
BEGIN
函数体;
END
MySQL HA
原理:从主服务器复制一个或多个从服务器的异步过程。在主和从之间实现整个复制过程主要由三个线程来完成:I/O线程在主服务器,另外两个线程(SQL线程和I/O线程)在从服务器端;
具体实现过程从服务器I/O线程请求连接上主服务器,主服务器收到通过自身I/O线程返回指定的日志信息,从服务器I/O收到将获取的数据记录到master-info中,同时SQL线程解析数据内容并执行;
本文来自博客园,作者:anyu967,转载请注明原文链接:https://www.cnblogs.com/anyu967/articles/17311973.html