1 #变量
2
12 #一、系统变量
13
30 #1》全局变量
31
34 #①查看所有全局变量
35 SHOW GLOBAL VARIABLES;
36 #②查看满足条件的部分系统变量
37 SHOW GLOBAL VARIABLES LIKE "%char%";
38 #③查看指定的系统变量的值
39 SELECT @@global.autocommit;
40 #④为某个系统变量赋值
41 SET @@global.autocommit=0;
42 SET GLOBAL autocommit=0;
43
44 #2》会话变量
45
48 #①查看所有会话变量
49 SHOW SESSION VARIABLES;
50 #②查看满足条件的部分会话变量
51 SHOW SESSION VARIABLES LIKE "%char%";
52 #③查看指定的会话变量的值
53 SELECT @@autocommit;
54 SELECT @@session.tx_isolation;
55 #④为某个会话变量赋值
56 SET @@session.tx_isolation="read-uncommitted";
57 SET SESSION tx_isolation="read-committed";
58
59 #二、自定义变量
60
67
68 #1》用户变量
69
72
73 #赋值操作符:=或:=
74 #①声明并初始化
75 SET @变量名=值;
76 SET @变量名:=值;
77 SELECT @变量名:=值;
78
79 #②赋值(更新变量的值)
80 #方式一:
81 SET @变量名=值;
82 SET @变量名:=值;
83 SELECT @变量名:=值;
84 #方式二:
85 SELECT 字段 INTO @变量名
86 FROM 表;
87 #③使用(查看变量的值)
88 SELECT @变量名;
89
90
91 #2》局部变量
92
96
97 #①声明
98 DECLARE 变量名 类型;
99 DECLARE 变量名 类型 【DEFAULT 值】;
100
101
102 #②赋值(更新变量的值)
103
104 #方式一:
105 SET 局部变量名=值;
106 SET 局部变量名:=值;
107 SELECT 局部变量名:=值;
108 #方式二:
109 SELECT 字段 INTO 具备变量名
110 FROM 表;
111 #③使用(查看变量的值)
112 SELECT 局部变量名;
113
114
115 #案例:声明两个变量,求和并打印
116
117 #用户变量
118 SET @m=1;
119 SET @n=1;
120 SET @sum=@m+@n;
121 SELECT @sum;
122
123 #局部变量
124 DECLARE m INT DEFAULT 1;
125 DECLARE n INT DEFAULT 1;
126 DECLARE SUM INT;
127 SET SUM=m+n;
128 SELECT SUM;
129
130
131 #用户变量和局部变量的对比
132
133 作用域 定义位置 语法
134 用户变量 当前会话 会话的任何地方 加@符号,不用指定类型
135 局部变量 定义它的BEGIN END中 BEGIN END的第一句话 一般不用加@,需要指定类型
136