鳥(niǎo)在籠中,恨關(guān)羽不能張飛;人處世上,要八戒更需悟空
用%ROWTYPE作聲明的時(shí)候是不可以進(jìn)行初始化賦值的,但是有兩種方法可以一次性為所有字段賦值。 方法一:假如兩個(gè)記錄類(lèi)型的聲明引用了同一數(shù)據(jù)表或游標(biāo),那么它們就可以相互賦值,如:
但是,如果一個(gè)類(lèi)型是引用的是數(shù)據(jù)表而另一個(gè)引用的是游標(biāo)的話,那么,即使它們表現(xiàn)的內(nèi)容相同,也是不能相互賦值的 dept_rec2 := dept_rec3; - - not allowed
因?yàn)榇颂幍膁ept_rec2引用是表,而dept_rec3引用的是游標(biāo),所以即便它們查詢的內(nèi)容一樣也 方法二:我們可以使用SELECT或FETCH語(yǔ)句將取得的數(shù)據(jù)賦給記錄。但在表或視圖中定義的字段名稱(chēng)順序要與記錄中的名稱(chēng)順序相同。
但是,我們不能使用賦值語(yǔ)句來(lái)把字段列表中的值賦給記錄。所以,下面的語(yǔ)法形式是不允許的: record_name := (value1, value2, value3, ...); -- not allowed 三、使用別名
從游標(biāo)中取出的數(shù)據(jù),如果游標(biāo)定義中含有表達(dá)式時(shí),我們就需要使用別名才能正確地為%ROWTYPE類(lèi)型記錄賦值:
posted on 2009-02-25 15:49 beyond 閱讀(692) 評(píng)論(0) 編輯 收藏