PLSQL程序访问Oracle数据库中的数据表。
使用%type读取订单信息表中刘志成购买的订单的总金额和数量。
使用%ROWTYPE在用户表(user table)中查找并输出用户“03”的信息。
查询用户“XXX”的订单号并输出。否则,输出会捕获一个预定义的异常。该用户没有订单。“如果有多条记录,则output”捕获预定义的异常并返回多条记录。用户有一个订单消息并输出订单号。例如,用户是“刘”。declarev _ oidorders.o _ id % typeBeginSelecto _ id inov _ oidfroorders,customers where orders . c _ id=customers . c _ id andc _ true name='刘';DBMS _ output . put _ line(v _ oid);exception when too _ many _ rowthendbms _ output . put _ line('捕获了预定义的异常,并且返回了多条记录。');当no _ data _ found then DBMS _ output . put _ line('捕获到预定义的异常,并且该用户没有订单。');结束;
用户有多个订单信息,多个返回结果不能写入一个变量。异常被捕获。declarev _ oidorders.o _ id % typeBeginSelecto _ id inov _ oidfroorders,customers where orders . c _ id=customers . c _ id andc _ true name='刘志成';DBMS _ output . put _ line(v _ oid);exception when too _ many _ rowthendbms _ output . put _ line('捕获了预定义的异常,并且返回了多条记录。');当no _ data _ found then DBMS _ output . put _ line('捕获到预定义的异常,并且该用户没有订单。');结束;
该用户没有订单信息。异常被捕获。declarev _ oidorders.o _ id % typeBeginSelecto _ id inov _ oidfroorders,customers where orders . c _ id=customers . c _ id andc _ true name='张莹莹';DBMS _ output . put _ line(v _ oid);exception when too _ many _ rowthendbms _ output . put _ line('捕获了预定义的异常,并且返回了多条记录。');当no _ data _ found then DBMS _ output . put _ line('捕获到预定义的异常,并且该用户没有订单。');结束;
定义用户定义的异常。如果'三星SGH-P520 '的库存数量小于20,将显示('库存数量略少!')。
使用光标查询用户表中所有用户类型为“超级”的用户的用户号和用户名。
特别提示
人,仅供参考
学习创建Oracle数据表,它将使用中以前的数据表。