MySQL数据库基础学习

MySQL基础知识

-----------

 -----------------------------------

MySQL中的变量:

系统变量:变量由系统提供的,不用自定义
1.全局变量 :服务器层面上的,针对整个服务器的,必须拥有super权限才能为系统变量赋值,作用域为整个服务器,针对于所有的连接和会话有效,
2.会话变量 :服务器为每一个连接的客户端提供了系统变量,作用域为当前的连接和会话

查看系统变量:
show global|session variables like ''; 如果没有声明global还是session,则默认是session
查看指定的系统变量的值:
select @@global|session.变量名; 如果没有显示声明global还是session,则默认是session
为系统变量赋值:
set global|session 变量名=值;
set @@global.变量名=值; 为全局变量赋值
set @@变量名=值; 为局部变量赋值


=================>>
自定义变量:
1.用户变量 :作用域针对于当前的连接和会话有效,可以放在任何位置,
声明的时候赋值:
set @变量名=值;
set @变量名:=值;
select @变量名:=值;

更新变量的赋值
set @变量名=值;
set @变量名:=值;
select @变量名:=值;

select xx into @变量名 from 表;

变量的使用:
select @变量名;

2.局部变量:作用域:仅仅在定义它的代码块中有效或是begin end 中有效,且只能放在第一句
使用:
1.声明:declare 变量名 类型 默认值;
2.赋值或更新值
set 变量名=值;
set 变量名:=值;
select @变量名:=值;
select xxx into 变量名 from 表;
3.使用
select 变量名;

变量的使用:赋值和查看
================================

MySQL存储过程:

类似与java中的方法,将一组完成特定功能的逻辑语句包装起来,对外暴露名字
1.提高了重用性
2.sql语句简单
3.减少了与服务器的连接次数,提高了效率

存储过程的创建
create procedure 存储过程名(参数模式 参数名 参数类型)
begin
存储过程体
end

解释:
参数模式:in输入, out输出, inout 既作输入又作输出,in可以省略不写
存储过程体:存储过程体中的每一条sql语句都需要用分号结尾


存储过程的调用:
call 存储过程名(实参列表)

查看存储过程:
show create procedure 存储过程名;

删除存储过程:
drop procedure 存储过程名;

===================

MySQL函数

函数的创建:
create function 函数名(参数名 参数类型) returns 返回类型
begin
函数体
end


其中函数体中必须要有return语句

函数的调用:
select 函数名(实参列表);

函数的查看:
show create function 函数名;

函数的删除:
drop function 函数名;
-------------

流程控制结构:

顺序结果:程序从上往下依次执行

分支结构:程序按条件进行执行,从两条或多条路径中选择一条执行

循环结果:程序在满足一定条件下,重复执行一组语句
==============
if 函数:用来实现简单的双分支

if(条件,值1,值2)
----------
case结构:用来实现多分支

case 表达式或字段
when 值1 then 语句1;
when 值2 then 语句2;

else
end;


case
when 条件1 then 语句1;
when 条件2 then 语句2;

else
end;

-----------------
if 结构:实现多分支

if 条件1 then 语句1;
elseif 条件2 then 语句2;

else 语句;
end if;
--------------------------
循环结构:只能放在begin end中
1.while
名称 while 循环条件 do
循环体
and while ;

2.loop
loop
循环体
end loop ;

3.repeat
repeat
循环体
until 结束条件
end repeat ;
----------------------

-------------------------------

----------------------------------------

猜你喜欢

转载自www.cnblogs.com/GaoNa/p/9855307.html