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

泉州网站建设哪里优惠首钢建设一公司网站

泉州网站建设哪里优惠,首钢建设一公司网站,桂林百姓网,上海网站备案要求吗目录 一.游标 格式 操作 演示 二.异常处理—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 flag0;-- 打开游标open my_cursor;-- 通过游标获得值label:loopfetch my_cursor into var_empno,var_ename,var_sal;if flag1 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 flag0;-- 打开游标open my_cursor;-- 通过游标获得值label:loopfetch my_cursor into var_empno,var_ename,var_sal;if flag1 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_creatorstrue ; -- 允许创建函数权限信任 set global log_bin_trust_function_creatorstrue ;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.ho-use.cn/article/10817094.html

相关文章:

  • 福田网站建设公司哪家性价比高网站建设知识点的总结
  • 工信部网站icp备案号学校网站建设报价单
  • 做哪种类型网站赚钱时尚女装网站模版
  • 哪家网站制作 优帮云中国网站建设公司百强
  • 网站建设科技有限公司住总集团公司宣传册设计样本
  • python3 网站开发网站框架包括哪些
  • 怎么做单页网站导航企业网站项目流程
  • 经销做网站都有什么好处江苏省网架公司
  • 金华网站制作营销移动云服务器租用
  • 怎么查询网站后台地址旅游网站建设意义
  • 怎样注册网站免费的吗新注册公司电话号码查询
  • 朝阳建筑工程建设网站曲阜人网站
  • cn体育门户网站源码中国十大购物网站排行榜
  • 在线做图片软件广东专业网站优化公司
  • wordpress 加密文章万荣网站seo
  • 站长友情链接平台商业网站运营成本
  • 做酒招代理的网站page list wordpress
  • dw如何用表格做网站阿里云学生服务器购买
  • 有哪些免费的ppt模板下载网站wordpress是英文的怎么办
  • 网站设计与管理论文dt模板网
  • 做网站代理网站开发后端语言有哪些
  • 网站建设微站网络优化app哪个好
  • 网站seo检测合肥网络推广培训
  • 南昌网站建设怎么样建设纺织原料网站
  • 淄博网站建设找李光明已经有域名 怎么修改网站
  • 广州做网站代理商免费网站收录提交
  • 做网站linux主机wordpress注册填写密码
  • 做网站即墨用仿网站做优化有效果吗
  • 赤峰网站制作公司上海专业做网站推广的公司
  • 怎样做有效的黄页网站甘肃网站快速排名策划