当前位置: 首页 > news >正文

电子商务网站建设毕业论文seo新方法

电子商务网站建设毕业论文,seo新方法,买到域名网站怎么做,手机网站建设技术方案目录 一.游标 格式 操作 演示 二.异常处理—handler句柄 格式 演示 三.存储函数 格式 参数说明 演示 四.存储过程总结 一.游标 游标(cursor)是用来存储查询结果集的数据类型,在存储过程和函数中可以使用游标对结果集进行循环的处理。游标的使用包括游标的声明、OPEN、…

目录

一.游标

格式

操作

 演示

二.异常处理—handler句柄

格式

 演示

 三.存储函数

格式

 参数说明

演示

四.存储过程总结


 

一.游标

游标(cursor)是用来存储查询结果集的数据类型,在存储过程和函数中可以使用游标对结果集进行循环的处理。游标的使用包括游标的声明、OPEN、FETCH和 CLOSE.

格式

 

操作

 演示

use test_procedure ;
-- 需求:输入一个部门名,查询该部门员工的编号、名字、薪资,将查询的结果集添加游标
delimiter $$
create procedure proc21(in in_name varchar(50))
begin-- 定义局部变量declare var_empno int;declare var_ename varchar(50);declare var_sal decimal(7,2);-- 声明游标declare my_cursor cursor forselect empno ,ename ,sal  from emp e,dept d where d.dname =in_name ;-- 打开游标open my_cursor;-- 通过游标获得值fetch my_cursor into var_empno,var_ename,var_sal;select var_empno,var_ename,var_sal;-- 关闭游标close my_cursor;
end $$
delimiter ;call proc21('销售部');

运行输出的结果是

但是

 我们发现符合要求的有多个值,这是因为游标是一条条往下执行的所以我们可以用一个循环

use test_procedure ;
-- 需求:输入一个部门名,查询该部门员工的编号、名字、薪资,将查询的结果集添加游标
delimiter $$
create procedure proc21(in in_name varchar(50))
begin-- 定义局部变量declare var_empno int;declare var_ename varchar(50);declare var_sal decimal(7,2);-- 声明游标declare my_cursor cursor forselect empno ,ename ,sal  from emp e,dept d where d.dname =in_name ;-- 打开游标open my_cursor;-- 通过游标获得值label:loopfetch my_cursor into var_empno,var_ename,var_sal;select var_empno,var_ename,var_sal;end loop label;-- 关闭游标close my_cursor;
end $$
delimiter ;call proc21('销售部');

 结果会报错

No data - zero rows fetched, selected, or processed 这句话意思是没有数据 零行 读取 选择或处理,就是说循环到最后没值了,所以我们需要找到一个条件并及时退出循环,这就需要异常处理—handler句柄。

二.异常处理—handler句柄

格式

 注意

在语法中,变量声明、游标声明、handler声明是必须按照先后顺序书写的,否则创建存储过程出错。

--定义句柄:定义异常的处理方式

1:异常处理完之后程序该怎么执行
        continue :继续执行剩余代码

        exit :直接终止程序
        undo:不支持
2:触发条件

条件码:1329

条件名:
        SQLWARNING

        NOT FOUND

        SQLEXCEPTION

 演示

-- 用条件名
use test_procedure ;
-- 需求:输入一个部门名,查询该部门员工的编号、名字、薪资,将查询的结果集添加游标
delimiter $$
create procedure proc22(in in_name varchar(50))
begin-- 定义局部变量declare var_empno int;declare var_ename varchar(50);declare var_sal decimal(7,2);-- 定义标记值declare flag int default 1;-- 声明游标declare my_cursor cursor forselect empno ,ename ,sal  from emp e,dept d where d.dname =in_name ;-- 定义句柄,当数据未发现时将标记位设置为0declare continue handler for  not found set flag=0;-- 打开游标open my_cursor;-- 通过游标获得值label:loopfetch my_cursor into var_empno,var_ename,var_sal;if flag=1 thenselect var_empno,var_ename,var_sal;elseleave label;end if;end loop label;-- 关闭游标close my_cursor;
end $$
delimiter ;call proc22('销售部');-- 用条件码
use test_procedure ;
-- 需求:输入一个部门名,查询该部门员工的编号、名字、薪资,将查询的结果集添加游标
delimiter $$
create procedure proc23(in in_name varchar(50))
begin-- 定义局部变量declare var_empno int;declare var_ename varchar(50);declare var_sal decimal(7,2);-- 定义标记值declare flag int default 1;-- 声明游标declare my_cursor cursor forselect empno ,ename ,sal  from emp e,dept d where d.dname =in_name ;-- 定义句柄,当数据未发现时将标记位设置为0declare continue handler for  1329 set flag=0;-- 打开游标open my_cursor;-- 通过游标获得值label:loopfetch my_cursor into var_empno,var_ename,var_sal;if flag=1 thenselect var_empno,var_ename,var_sal;elseleave label;end if;end loop label;-- 关闭游标close my_cursor;
end $$
delimiter ;call proc23('销售部');

两个的运行结果是一样的

 三.存储函数

格式

在MySQL中,创建存储函数使用create function关键字,其基本形式如下:

 参数说明

(1) func_name :存储函数的名称。
(2) param_name type:可选项,指定存储函数的参数。type参数用于指定存储函数的参数类型,该类型可以是MySQL数据库中所有支持的类型。
(3)returns type:指定返回值的类型。
(4)characteristic:可选项,指定存储函数的特性。
(5)routine_body: SQL代码内容。

演示

drop function if exists myfunc1_emp;
delimiter $$
create function myfunc1_emp() returns int
begindeclare cnt int default 0;select count(*) into cnt from emp;return cnt;
end $$
delimiter ;

运行结果可以会报错,像这样

 意思是说“此函数在其声明中没有确定性、无 SQL 或读取 SQL 数据,并且启用了二进制日志记录(您*可能*希望使用不太安全的 log_bin_trust_function_creators 变量)”

所以我们设置允许创建函数权限信任即可

-- 允许创建函数权限信任
set global log_bin_trust_function_creators=true ;

-- 允许创建函数权限信任
set global log_bin_trust_function_creators=true ;drop function if exists myfunc1_emp;
delimiter $$
create function myfunc1_emp() returns int
begindeclare cnt int default 0;select count(*) into cnt from emp;return cnt;
end $$
delimiter ;-- 调用存储函数
select myfunc1_emp();

 这样就可以了

四.存储过程总结

 

 

 

 

 

 

 

 

http://www.wangmingla.cn/news/121748.html

相关文章:

  • 公司网站建设属于无形资产吗合肥网站建设程序
  • 网上做推广有没有好一点的平台做灰色词seo靠谱
  • wordpress多站点多模板百度推广技巧方法
  • 专业做家具的网站培训机构招生方案范文
  • 简单网站制作软件推广普通话手抄报模板可打印
  • 北京网站设计公司排行网站运营包括哪些内容
  • wordpress模版seo惠州百度seo在哪
  • wordpress网站迁移线上推广平台
  • 党建网站安全建设中国数据网
  • 给网站定位网络广告营销方案
  • 做网站怎么接业务北京推广优化经理
  • 做网站 bs csseo怎么做优化方案
  • 龙华做网站怎么样培训机构网站
  • 正规的镇江网站建设如何推广自己的微信公众号
  • 投注网站开发信息流推广渠道有哪些
  • 人民政府网站的信息资源建设seo软件排行榜前十名
  • 医学网站建设风格软件培训机构排名
  • 网站建设 招标泉州关键词优化软件
  • 关于我们 网站cms网站模板
  • 做外汇 虚拟网站精准客户信息一条多少钱
  • 石家庄哪里有网站建设seo引擎优化平台培训
  • 做啪啪网站深圳搜索引擎优化推广便宜
  • 长治做百度网站一年多少钱百度推广电话号码
  • 网站开发公司规章制度站长域名查询
  • 网页游戏下载seo标题优化的方法
  • 亚马逊如何做站外促销网站高级seo培训
  • 手机 显示器自适应wordpress 主题seo服务如何收费
  • 网站顶部设计谷歌官网下载
  • 对网站备案的认识百度竞价的优势和劣势
  • php网站开发示例什么是核心关键词