第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

大家來找茬,運行報錯!為啥?求指導(dǎo)!

在行: 2 上開始執(zhí)行命令時出錯 -
DECLARE
--系的光標
cursor cdept is select dno,dname from dep;
pdno dep.dno%type;
pdname dep.dname%type;
--成績光標
cursor cgrade(coursename varchar2,depno number)? is? select? grade from sc where cno=(select cno from course where cname=coursename)
??????????????? and sno in (select sno from student where dno=depno);
???????????????
????? pgrade sc.grade%type;
????? count1 number;
????? count2 number;
????? count3 number;

??? avggrade number;
????? pcourseName varchar2 := '大學(xué)物理';
?????
??? begin??
??? open cdept;
??? loop
??? --取一個系的信息
????????????? fetch cdept into pdno,pdname;
??? exit when cdept %notfound;
??? --初始化工作
??? count1:=0;count2:=0;count3:=0;
???
??? --系的平均成績
??? select avg(grade) into avggrade from sc where cno=(select cno from course where cname=pcoursename)
??????????????? and sno in (select sno from student where dno=pdno);
??????????????? --取系中,選修了大學(xué)物理的學(xué)生成績
????? open cgrade(pcoursename,pdno);
????? loop
????? fetch cgrade into pgrade;
????? exit when cgrade%notfound;
????? if pgrade < 60 then count1:=count1+1;
????? elsif pgrade >=60 and pgrade <85 then count2:=count2+1;
??? else count3:=count3+1;
??? end if;
?????
????? end loop;
?????
????? close cgrade;
??? insert into msg1 values ( pcoursename,pdname,count1,count2,count3,avggrade);
???
???
??? end loop;
???
??? close cdept;
???
??? COMMIT;
??? dbms_output.put_line('統(tǒng)計完成');
??? end ;
?????
?????
錯誤報告 -
ORA-06550: 第 16 行, 第 19 列:
PLS-00215: 字符串長度限制在范圍 (1...32767)
06550. 00000 -? "line %s, column %s:\n%s"
*Cause:??? Usually a PL/SQL compilation error.
*Action:

正在回答

3 回答

pcoursename 需要指定長度~~

0 回復(fù) 有任何疑惑可以回復(fù)我~

varchar2,如果在pl/sql中它是以輸入或輸出參數(shù)的長度為準,如果在SQL中(比如創(chuàng)建表時)它是不允許不指定長度的. 所以 老師在視頻中沒有設(shè)定長度編譯也可以通過

0 回復(fù) 有任何疑惑可以回復(fù)我~

cursor cgrade(coursename varchar2,depno number)??

為什么 這個varchar2? 可以不指定長度 ,不太明白 求解答

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

EL_PSY_CONGROO

在cursor中的形參可以只聲明參數(shù)類型,而不設(shè)置數(shù)據(jù)類型的長度,如果是在單獨聲明變量的時候則一定要設(shè)置數(shù)據(jù)類型的長度。
2015-10-31 回復(fù) 有任何疑惑可以回復(fù)我~
#2

碼農(nóng)_鑫森淼焱垚

樓上正解...老師這里也出現(xiàn)一點問題 pcourseName varchar2 := '大學(xué)物理'; 這里要定義類型長度 pcourseName varchar2(10) := '大學(xué)物理';
2015-11-18 回復(fù) 有任何疑惑可以回復(fù)我~
#3

I振哥哥

很奇怪老師視頻當中聲明pcourseName時,并沒有制定數(shù)據(jù)的長度,為什么編譯通過?另,一樓說的一定要設(shè)置數(shù)據(jù)類型的長度也有點不妥,視頻中明明很多其他類型的沒有設(shè)置長度,照樣可以通過。
2015-11-25 回復(fù) 有任何疑惑可以回復(fù)我~
#4

I振哥哥 回復(fù) I振哥哥

當語言環(huán)境為中文(SIMPLIFIED CHINESE_CHINA.ZHS16GBK)時,一個VARCHAR2(200)的數(shù)據(jù)列可以保存200個英文字符或者100個漢字字符。
2015-11-25 回復(fù) 有任何疑惑可以回復(fù)我~
#5

I振哥哥 回復(fù) I振哥哥

varchar2 聲明方式如下VARCHAR2(L),L為字符串長度,沒有缺省值,作為變量最大32767個字節(jié),作為數(shù)據(jù)存儲在ORACLE8中最大為4000
2015-11-25 回復(fù) 有任何疑惑可以回復(fù)我~
#6

穩(wěn)坐釣魚臺

請好好看一下視頻,老師在編譯之前已經(jīng)將這個pcourseName varchar2(20) := '大學(xué)物理';長度改過來了
2016-02-29 回復(fù) 有任何疑惑可以回復(fù)我~
查看3條回復(fù)

舉報

0/150
提交
取消

大家來找茬,運行報錯!為啥?求指導(dǎo)!

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號