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

国家级示范校建设网站做网站程序看什么书

国家级示范校建设网站,做网站程序看什么书,建设网站公司电话销售话术,汕头网站网店建设oracle pl/sql语言#xff08;procedural language/sql#xff09;是结合了结构化查询与oracle自身过程控制为一体的强大语言。 语法执行块 语法结构#xff1a; [ declare 可选 声明变量部分--declaration statements (1);]begin --执行部分--executable statements (2)…oracle pl/sql语言procedural language/sql是结合了结构化查询与oracle自身过程控制为一体的强大语言。 语法执行块 语法结构 [ declare 可选 声明变量部分--declaration statements (1);]begin --执行部分--executable statements (2); [ exception --可选 异常处理--exception statements (3);]end;语法解析 声明部分包含变量和常量的定义这部分有关键字declare开始如果不声明变量和产量可以省略这部分。执行部分执行部分是pl/sql块指令部分由关键字begin开始关键字end结束。所有可执行pl/sql语句放在这一块该部分执行命令并操作变量。其他pl/sql块可以作为子块嵌套在该部分。pl/sql块的执行部分是必选的。注意end关键字后面要用分号结尾。异常处理部分该部分是可选的该部分用exception关键字把可执行部分分为两个小部分之前的程序是正常运行的程序一旦出现异常就跳转到异常部分执行。 声明与赋值 变量 pl/sql支持sql中的数据类型pl/sql中正常支持number,varchar2,date等oracle sql数据类型。声明变量必须指明变量的数据类型也可以声明变量时对变量初始化变量声明必须在声明部分。语法格式变量名 数据类型长度 [:初始值]declarev_name varchar2(20) : FULAOSHI;begindbms_output.put_line(v_name); --打印输出 fulaoshiv_name : HELLO WORLD!;dbms_output.put_line(v_name); -- hello world!end;声明部分 变量 1. 变量名 数据类型[长度] [:初始值] 2. 常量名 constant 数据类型 :常量值 declare v1 number(38) :1; v2 number :2; v3 constant number :3; v4 number; beginv4:v1v2;dbms_output.put_line(v4); ---3 v4:v1v3;dbms_output.put_line(v4); ---4 v4:v4v1;dbms_output.put_line(v4); ---5/* v3:33; -- 常量不可以再赋值dbms_output.put_line(v3);*/v4:33; dbms_output.put_line(v4); --33 end;--用plsql 变量计算 123456的结果 式子 declare v1 number:123; v2 number:456; v3 number; beginv3:v1v2;dbms_output.put_line(v3);dbms_output.put_line(v1||||v2||||v3); end; 引用型变量 %type 引用表中字段数据类型赋给变量数据类型 %rowtype 引用数据库表中的一行(所有字段)作为数据类型declare vename emp.ename%type : SMITH; vsal emp.sal%type:800; begindbms_output.put_line(vename);dbms_output.put_line(vsal); end;declare v emp%rowtype; --- 变量名.字段名 beginv.ename:SMITH;v.sal:800;dbms_output.put_line(v.ename);dbms_output.put_line(v.sal); end; 赋值 注意: select into 赋值 是把查询结果赋给变量 只能是单行结果集 可以是多列--打印dept表10部门的部门名称和部门所在地 select dname,loc from dept where deptno10;declare v dept%rowtype; beginselect dname,loc into v.dname,v.locfrom deptwhere deptno10;dbms_output.put_line(v.dname|| ||v.loc); end; --注意: 一个变量 一次只能被赋一个值调用时赋值 declare v1 number(10) : v1; v2 varchar2(20) :v2; v4 varchar2(20) :v4; v3 date : v3; ---传值的格式需要特别注意 begindbms_output.put_line(v1);dbms_output.put_line(v2);dbms_output.put_line(v4);dbms_output.put_line(v3); end; --传入一个部门编号 打印该部门的部门信息 时间变量赋值 --外部输入赋值变量declarev_date date;v_date_str varchar2(50);beginv_date : to_date(INPUT,YYYY-MM-DD); --执行部分 外部传参v_date_str : to_char(v_date, YYYY-MM-DD);dbms_output.put_line(v_date_str);exceptionwhen others thendbms_output.put_line(HAVE ERR);end; 打印输出 dbms_output.put_line 打印输出 并换行 dbms_output.put 打印输出 不换行 会将结果输出到缓存 必须最后搭配一个换行才能显示结果begindbms_output.put(abc);dbms_output.put(ABC);dbms_output.put_line();dbms_output.put_line(q); end; 异常处理 too_many_rows 返回多行 no_data_found 没找到数据 zero_divide 试图用0做除数 dup_val_on_index 违反唯一性限制 others 其他异常 写到最后sqlcode 错误代码 sqlerrm 错误描述--异常处理部分实例declarev_name number(20) : 100;begindbms_output.put_line(v_name); ---100v_name : HELLO WORLD!;dbms_output.put_line(v_name); --数据类型exceptionwhen others thendbms_output.put_line(HAVE ERR); end;--传入一个员工编号 打印该员工的 员工姓名以及职位--键盘输入一个员工姓名 打印员工编号,输入一个部门编号 打印员工编号 带上异常处理 declare vempno number; beginselect empno into vempnofrom empwhere enameename;---字符串加数值型可以不加dbms_output.put_line(vempno);select empno into vempnofrom empwhere deptnodeptno;dbms_output.put_line(vempno); exception when no_data_found thendbms_output.put_line(ename||该员工不存在); when too_many_rows thendbms_output.put_line(deptno||部门不止一人); when others then dbms_output.put_line(have error); end;流程控制 循环 判断 if then elsif then… if 条件 then执行逻辑1;end if;(1)用if关键字开始end if关键字结束注意end if后加分号(2)条件部分可以不使用括号但是必须以关键字then来表示条件结束如果条件成立则执行then后到end if之间的执行逻辑如果条件不成立则不执行条件语句块。(3)条件可以使用关系运算符和逻辑运算符。if then elsifif 条件1 then执行逻辑1;elsif 条件2 then执行逻辑2;...[else]执行逻辑n;end if;如果条件1成立则执行逻辑1如果条件1不成立则判断条件2此时若条件2成立则执行逻辑2若条件1与条件2均不成立则执行else后面的执行逻辑3。declarev_num number;v_no number;beginv_num : 4;v_no : 10;if v_num 3 and v_no 10 thendbms_output.put_line(IS GOOD!);elsedbms_output.put_line(IS BAD!);end if;exceptionwhen others thendbms_output.put_line(HAVE ERR);end;--练习 1、传入一个员工编号 操作emp10表 数据同emp select * from emp10; drop table emp10; create table emp10 as select * from emp; 如果这个员工的岗位是ANALYST或者CLERK或者SALESMAN就给该员工加500元奖金 如果这个员工的岗位是MANAGER就给该员工加800块奖金 如果这个员工的岗位是PRESIDENT不做处理declare vjob varchar2(20); beginselect job into vjobfrom emp10where empnoempno; --如果这个员工的岗位是ANALYST或者CLERK或者SALESMAN就给该员工加500元奖金 if vjob in (ANALYST,CLERK,SALESMAN) thenupdate emp10 set commnvl(comm,0)500 where empnoempno; --如果这个员工的岗位是MANAGER就给该员工加800块奖金elsif vjobMANAGER thenupdate emp10 set commnvl(comm,0)800 where empnoempno; --如果这个员工的岗位是PRESIDENT不做处理elsif vjobPRESIDENT thendbms_output.put_line(不处理);end if; --commit; exception when others then dbms_output.put_line(报错); end;2、输入一个员工编号 如果该员工的职位是 ANALYST ,CLERK 或者SALESMAN 就给他加500奖金 如果他的工资不足3000 则再给他加500奖金 如果该员工职位是MANAGER 给他加800奖金declare vjob varchar2(20); vsal number; beginselect job,sal into vjob,vsalfrom emp10where empnoempno; --如果该员工的职位是 ANALYST ,CLERK 或者SALESMAN 就给他加500奖金 if vjob in (ANALYST,CLERK,SALESMAN) thenupdate emp10 set commnvl(comm,0)500 where empnoempno; --如果他的工资不足3000 则再给他加500奖金 if vsal3000 then update emp10 set commnvl(comm,0)500 where empnoempno;end if; --如果该员工职位是MANAGER 给他加800奖金 elsif vjobMANAGER thenupdate emp10 set commnvl(comm,0)800 where empnoempno;end if; --commit ; exception when others thendbms_output.put_line(报错); end;select * from emp10; case when 语法: case when 条件1 then 要执行的语句;when 条件2 then 要执行的语句;.... else 要执行的语句; end case;--用case when 做传入一个员工编号如果这个员工工资小于1000就给他加300奖金如果这个员工工资1000到2000就给他加200奖金如果这个员工工资大于2000就给他加100奖金输出员工编号员工名字员工工资员工奖金 declare vemp emp%rowtype; beginselect sal,empno,ename,nvl(comm ,0)into vemp.sal,vemp.empno,vemp.ename,vemp.comm from emp where empnoempno; case when vemp.sal1000 then vemp.comm:vemp.comm300;when vemp.sal between 1000 and 2000 then vemp.comm:vemp.comm200; else vemp.comm:vemp.comm100; end case; dbms_output.put_line(vemp.sal|| ||vemp.empno|| ||vemp.ename|| ||vemp.comm); end;--输入一个字符 如果是大写字母 打印大写字母 --如果是小写字母 打印小写字母 否则打印我不认识该字符 使用 case when 判断declare v char(1):v; begincase when regexp_like(v,[A-Z]) thendbms_output.put_line(大写字母);when regexp_like(v,[a-z]) thendbms_output.put_line(小写字母);else dbms_output.put_line(我不认识该字符);end case; exception when others thendbms_output.put_line(错了); end;
http://www.hkea.cn/news/14394384/

相关文章:

  • 网站开发建站微信公众号小程序外国人做的学汉字网站
  • 给期货交易类做网站违法吗中国制造网外贸平台怎么注册
  • 如何用域名访问网站太仓建设工程信息网站
  • 网站新开怎么做营销php网站分类目录程序 网址导航程序 织梦二次开发
  • 济南优化网站个人网站设计开题报告
  • 永康网站建设公司网络公司名字怎么取
  • 常德网站建设 天维代理app推广
  • 做图表的网站知乎用js做网站登录
  • 上海 网站备案系统东莞企业网站建设公司
  • wordpress二手房a标签优化网站
  • 建设官方网站的好处和坏处网站建设教程纯正苏州久远网络
  • 网站运营意义企业所得税怎么算公式
  • 网站维护收费标准用一个域名免费做网站
  • 绵阳个人网站建设职业培训机构哪家最好
  • wordpress多站点分别部署泰安高新区建设局网站
  • 国际学院网站建设的意义棠下手机网站建设电话
  • 做一个平台 网站服务器搭建WordPress产品录入
  • 中心网站设计郑州搜索引擎优化
  • 模板网站的弊端在哪哈尔滨网站优化指导
  • 深圳网站平台建设快速注销网站备案
  • 网站搜索排名和什么有关系休闲吧网站建设
  • 给别人做ppt的网站wordpress进不了文章页面
  • 那里网站建设好wordpress自定义登录界面
  • 空间商网站宣传片制作公司费用
  • 丹江口网站建设世界500强企业排名
  • 网络课程网站模板个人养老金制度的利弊
  • 蚌埠的网站建设郑州最新发布信息
  • 建设vip网站相关视频网站访问不了的原因
  • 做任务有q币的网站wordpress 密码看贴
  • 手机 网站服务器珠海网站建设推广方案