存储过程的书写可能会产生乱码,可以网上查查
linux下,可以在/etc/my.cnf中添加如下:
character-set-server = utf8 //设置服务器用utf-8
init_connect='SET NAMES utf8' //都采用UTF-8编码
lower_case_table_names=1 //设置大小写不敏感
socket = /tmp/mysql.sock
1 存储过程if else
DROP PROCEDURE IF EXISTS insertOrganization;
CREATE PROCEDURE insertOrganization(IN o varchar(39),IN sName VARCHAR(100))BEGIN
set @orgType=if((o in ('0000')),1,0);
IF(@orgType = 1) THEN /*属于组织*/
select "1";
END IF;
IF(@orgType = 0) THEN /*属于部门*/
select "0";
END IF;
END;
call insertOrganization('00000',''); //调用存储过程
2 select给存储过程赋值,用into方式
SET @one := 1;
select @one;
select A.id into @one from A where id=6;