sql练习3

来源:互联网 发布:王者荣耀输入法软件 编辑:程序博客网 时间:2024/05/20 06:05
--1. 求半径2米,高3米的圆柱体体积。
DECLARE
tiji number :=3.14*2*2*3; 
BEGIN
dbms_output.put_line('圆柱的体积为:'||tiji);
END;


--2. 求字符串‘abcdefg’的长度。
DECLARE
len NUMBER;--:=LENGTH('abcdefg') ; 
BEGIN
 SELECT LENGTH('abcdefg') INTO len  
 from dual;
dbms_output.put_line('字符串‘abcdefg’的长度为:'||len);
END;


--3. 显示pubs数据库中所有作家的au_lname的开头两个字母,大写显示。(字符函数)
CREATE TABLE pubs(
  au_lname VARCHAR2(20) NOT NULL,
au_num  number  NOT NULL
)
INSERT INTO pubs(au_lname,au_num)
VALUES ('abcde',12);


DECLARE
anam pubs.au_lname%TYPE;
BEGIN


SELECT au_lname INTO anam
FROM pubs ;
anam:=upper(substr(anam,1,2));
dbms_output.put_line(anam);
END;




--4. 取字符串‘abcdefg’的第2到第5个字母。(字符函数)
DECLARE
str VARCHAR2(10); 
BEGIN
 SELECT SUBSTR('abcdefg',2,4) INTO str  
 from dual;
dbms_output.put_line('字符串abcdefg的第2到第5个字母为:'||str);
END;
--5. 计算2001年9月11日到今天已经多少天了。(日期函数)
DECLARE
v_d NUMBER:=(SYSDATE-TO_DATE('2001-09-11', 'yyyy-mm-dd')); 
BEGIN
dbms_output.put_line(v_d);
END;
--6.  查询emp表,找出编号为7395的记录,如果名字为SCOTT 显示“找到了”否则显示“没找到”。(if语句)
DECLARE
v_q EMP %rowtype; 
BEGIN
 SELECT * INTO v_q  
 from emp e
 WHERE e.EMPNO=7395;


 if (v_q.ename='SCOTT')
THEN
--专门输出语句 
dbms_output.put_line('找到了');
ELSE
dbms_output.put_line('没找到');
END IF;
exception--异常处理 如果没有找到数据
when others THEN
    dbms_output.put_line('没有找到员工');
END;
--7.编写一个程序,用以接受用户输入的数字。将该数左右反转,然后显示反转后的数
--提示:使用循环控制结构.
DECLARE 
v_n NUMBER:=123;
len NUMBER:=LENGTH(v_n);
begin 
for i in  reverse 1 .. len--从1-100 reverse 倒过来100-1
loop
dbms_output.put(i);
end loop;
  dbms_output.put_line('');
end;


--8.编写一个程序,在emp表中根据empno查询职员信息。如果代码引发NO_DATA_FOUND异常,则显示一则消息.
DECLARE  --错误处理
v_s emp %rowtype;
begin 
select * into v_s
from emp e
where e.empno is NULL;
dbms_output.put_line( v_s.empno||v_s.ename);


EXCEPTION
when no_data_found THEN
dbms_output.put_line('没有该职员');--当前错误信息,系统异常


end;








--9.编写一个程序,用以接受用户输入的DEPTCODE,并从employee表中检索该雇员的EMPNO。如果代码引发TOO_MANY_ROWS异常,则显示消息“返回多行”.
declare
   info emp.empno%type;
begin
   select empno into info from emp  where (SELECT COUNT(deptno)from emp)>1;--deptno is not null;


exception
    when too_many_rows then
       dbms_output.put_line('返回多行');
end;





原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小狗咳嗽打了针还不好怎么办 孕妇感冒后鼻涕带血口腔发炎怎么办 宝宝出生17天睡眠不安稳怎么办 月子里宝宝睡觉老是睡不安稳怎么办 孕妇晚期咳嗽鼻涕黄咽喉痛怎么办 狗狗流脓鼻涕拉稀没食欲怎么办 孕妇眼睛充血很快就有眼屎怎么办 婴儿的眼睛流泪生眼屎怎么办呀 刚出生的婴儿眼睛有眼屎怎么办 25天的婴儿鼻子有鼻屎不通怎么办 一个月的宝宝好多鼻屎怎么办 隆鼻取线的时候好多鼻屎怎么办 小孩流浓鼻涕怎么办最简单方法 小孩流黄鼻涕怎么办最简单方法 一岁八个月宝宝鼻涕和痰多怎么办 空调铜管过不了预埋管的弯头怎么办 如果朝鲜和韩国打起来中国怎么办 寄信时不知道对方的邮编怎么办 地下钱庄转账后银行户被冻结怎么办 老师遇到素质极差的垃圾学生怎么办 验证码忘了手机号也换了怎么办 手机上的验证码忘了怎么办 进入医联网的验证码忘了怎么办 育碧换电脑了无法同步云存档怎么办 刺客信条起源育碧需要激活码怎么办 电脑连不上网怎么办wifi可以用 电脑登录账号密码错误锁定了怎么办 白色T恤衫上沾上黑色的黄油怎么办 家教遇到成绩好的学生该怎么办 跟越南人离婚孩子中国户口9怎么办 老婆是个越南人至今没户口怎么办 等离子屏z板链接处排线打火怎么办 等离子自动调焊的成形不好怎么办 村里内村道路中间被抢占了怎么办 华为换电池之后卡没反应怎么办 汽车钥匙换电池后没反应怎么办 汽车解锁换电池后没反应怎么办 包裹显示待收件人向海关申报怎么办 在越南签证被公安扣了怎么办 酷派手机收不到验证码怎么办 苹果想把图片上的字盖上怎么办