mysql创建视图sql_mysql创建视图和存储过程,变量创建视图
sql>create view 视图名 as select语句;
修改视图并添加别名
sql>create or replace view empvu10 (employee_number,employe_name,job_title)
as select empno,ename,job
from emp
where deptno=10;
删除视图
drop view 视图名
创建存储过程
create procedure 过程名(in n varchar(20),out m int)
mysql视图和存储过程
begin
select count(sal) into m from emp where name=n;
end;
调⽤
call 过程名(n)
删除
drop procedure 过程名
定义变量
⽤户变量:使⽤set或select直接赋值,变量名以@开头例如:set @var=1;select @var:=5;、
定义:基于会话变量实现的, 可以暂存值, 并传递给同⼀连接⾥的下⼀条sql使⽤的变量.当客户端连接退出时,变量会被释放
⽤户变量:以"@"开始,形式为"@变量名"
注意:⽤户变量跟mysql客户端是绑定的,设置的变量,只对当前⽤户使⽤的客户端⽣效。也叫会话变量。
赋值
set @test=1;--或者
set @test:=1;--或者
select @test,@tt:=2;
注意:如果使⽤没有初始化的变量,其值是NULL。使⽤set赋值时,使⽤的是“=”或者":=",使⽤select赋值时必须使⽤的是“:="
局部变量:declare声明,只能在存储过程中使⽤。
declare var1 int default 0;declare v1,v2 varchar(20);
赋值
set语句进⾏赋值
set i=500;--或者
set i :=500;
declare必须在d语句块中,必须在最前⾯
为了和oracle赋值相匹配,尽量都使⽤ ":=" 来赋值
从其他表中拷贝记录
SQL>insert into managers(id,name,salary,hiredate)
select empno,ename,sal,hiredate from emp where job='manager';可插⼊多⾏,插⼊了3⾏数据