成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

推薦:學習使用 Oracle觸發器心得體會

瀏覽:233日期:2023-11-25 13:37:56
實在對象如表格、Sequence、索引等建在本應用對應的用戶表空間中,其他對象如視圖、別名創建在Apps下,常見錯誤是新手把表建在APPS下,以后又來建別名,這個時候刪除別名時會報對象不存在,而建別名的時候又報對象已存在。 假如把腳本保存在文件里面,注重一個塊比如一個創建視圖的語句不要有空行,否則會出現如下情況:把語句拷貝到SQL Window能正常運行,用@執行文件卻報錯。 假如要執行execute_query,注重要go_block到適當的Block,但是go_block是個受限過程,并不一定都能成功 Master-detail關系: block both are database blockeach block has one item based on database displayed在PL/SQL Develop中沒有環境變量,所以假如要查詢多組織的View,需要先執行設置環境變量函數: BEGINfnd_client_info.set_org_context('83');END;GLOBAL變量對于所有form有效(可能是同一個應用,這個尚未驗證),而不僅僅是你所開發的form變量比如Global和Parameter的初始化應該在pre-form里面,在when-new-form-instance里面初始化不行,因為when-new-form-instance是在進入第一個導航塊的第一個item之后才促發的沒有屬性指名Block的記錄數,不過可以通過GET_BLOCK_PROPERTY(QUERY_HITS) 取得查詢到的記錄數hide_view并沒有真正hide一個畫布,只是放到最下層,所以假如上層的畫布沒有完全覆蓋下層畫布,下層的畫布很可能用戶還看得到;show_view則是把畫布放在最上層。 lov驗證的時候是驗證第一個可見的列,并且會把其他的返回值返回給各個Item,而不是僅僅驗證而已lov的查詢一般是針對第一列,但是假如我們把%放在最前面,則可以查詢所有列。 用Execute_query執行查詢的時候,會把Copy Value From Item里面的那個Item的值自動作為查詢條件。當創建記錄的時候也會直接用該值初始化,而且不改變記錄的狀態。在更新記錄的時候不知道會不會Copy過來尚未驗證。Get_Item_property的時候用ENFORCE_KEY屬性,但不能Set。該屬性在Master-detail設置的時候自動創建,刪除的時候自動刪除。假如不希望Copy Value From Item影響查詢結果,可以在Pre-Query里面把Item的值設為null。 app_query.reset('block_name');假如第一次調用,會把當前的DEFAULT_WHERE,然后什么都不做,以后再來調用的時候則會把第一次設置的DEFAULT_WHERE用set_block_property('SAA_HEADERS',DEFAULT_WHERE,...)設置回來,具體請參考app_core庫。 When-create-record的時候給Item賦值不改變記錄狀態。Sequence,假如我們在Item的Initial Value里面賦值,那么假如用戶Focus To新記錄,又回到老記錄,如此反復,Sequence會不斷變大的。 SQL Order BY的時候null值排在最后,這個一般不符合實際要求,可以這樣解決ORDER BY nvl(Geography_Code,chr(0))解決。 Trigger順序1: pre-commit塊1的pre-insert,on-insert,post-insert塊2的pre-insert,on-insert,post-insert...post-forms-commitTrigger順序2: when-list-changed在前,Validation item在后,因為Validation item是在要離開這個item的時候才促發的。 Trigger順序3: pre-form/when-create-record/pre-block/when-new-forms-instance/when-validate-record/on-insert/post-forms當定位到主塊的一個記錄,會促發子塊的when-clear-record事件和when-create-record事件,問題是假如主塊的是新記錄(未保存),在子塊的when-create-record里面取主塊的任何東西,居然是主塊的上一次獲得焦點的記錄的東西;連用取塊的當前記錄也是上一次獲得焦點的記錄。 Trigger順序4: post-changed在when-validate-item之前。所有的when-validate事件是當forms自己驗證通過之后才促發的。 禁用Clear功能可以通過在Form的key-clrblk里面調用app_exception.disabled,其實只是用Bell覆蓋默認的執行。 直接放在TAB Page上的Item,和放在堆疊畫布上的Item在設計時是無法“所見即所得”,所以建議把所有的Item根據需要放在不同的堆疊畫布上再堆到TAB Page上偽列Rownum在排序之前就已經決定,假如想得到排序后的Rownum,應當在嵌套一個Select語句;另外Where語句中的rownum只能用<或者<=,不能有>或者>=。 在SQL中用Over的時候,假如整個語句沒有Order by語句,最后的結果還是會排序的,規則是先按Over里面的Partition排序,在按Over里面的Order by排序。原因可能和分析函數的處理順序有關(8ifunctions.pdf有具體介紹):先查詢到數據(Join/Where/Group By/Having),再運算分析函數(先分區,然后排序,再算Slide Windows,最后計算),最后是Order By。另外,一個疑問:我測試到的一個結果Group By似乎無法影響Partition,可是按照8ifunctions.pdf的說法,應該先執行Group By的,是不是因為Group By只是在第一階段的處理時作用在集合函數上,之后進入第二階段的處理就沒用了。 同事在裝8i的時候,連安裝界面都沒出來,而我機器可以裝,后來才知道原來他的機器是P4,無法正常安裝。 實際執行的Where條件,是我們設置DEFAULT_WHERE,再加上通過賦過值的Item。 注重:APP_FIND.query_range已經重載過,我們調用的時候可以不區分query_number_range或者query_date_range;觀察其代碼,發現也是通過給Item賦值來影響查詢的,只不過是賦值的時候,可能是加上 # between,# >=或# <=;這樣導致的一個結果是:Date類型的Item長度默認是11,被query_range這樣一搞,長度根本不夠,于是就導致諸如where REQUEST_DATE >= to_dat的錯誤,所以記得把字段長度加長,比如1000;總的來說,碰到From to的要小心長度。 當修改子類的時候,會自動更改很多屬性,非凡是Required,一定要注重。 當對塊進行刷新時,會修改很多Item的屬性,別以為你設置過了,Oracle就會記住。我碰到的情況是Insert Allowed等被自動改掉了!即使我的子類設置為Text_Item_Display_Only。 兩個變量,假如都為Null,判定還是不相等,所以必須用 a1 is null and a2 is null。所以在On-lock里面的if條件,我們可以把所以不可以為空的字段都寫成答應為空的形式。 一般來說,系統變量是很好用的。然而有時候并非如此,比如Current_Record,get_block_property('blockname',Current_Record)的結果并非總是一樣的,后者更加保險!非凡是剛打開Form的時候,在WHEN-NEW-RECORD-INSTANCE里面,前者是0,后者是1。 ''''表示一個單引號,''''''表示兩個單引號。應該是這樣理解,一個單引號表示轉義字符,首尾兩個單引號里面的內容表示字符串。 重啟Application: cd $APPLCSFcd scriptscd PROD./adstpall.sh apps/apps./adstrtal.sh apps/appsTrigger順序5: post-query,只有在界面可見的記錄才會促發,記錄從不可見變為可見時促發,促發過的記錄不再促發; 保存的時候會引發Post Item/Record/Block事件,因為要Navigate到Form。 數據庫org_id初始值to_number(decode(substrb(userenv('CLIENT_INFO'),1,1),' ',null,substrb(userenv('CLIENT_INFO'),1,10)))。 給非數據庫Item賦值;new記錄會變成insert(所以就不能按F11了);query/changed記錄不變;new塊會變成query;query/changed塊不變。 對On-lock的理解,由于先入為主的緣故,開始一直很苦惱,為什么If里面只用了一個Return,Form怎么知道要鎖否?后來才知道On類型的數據庫觸發器是替換型的,On-lock也不例外,所以只要On-lock不Raise什么東西出來,Form就認為是鎖成功了,至于實際的鎖,我們有Select……For Update來完成,至于If判定只是進行更加嚴格的判定。 對Find的理解,開始也很納悶,為什么在Pre-query里面直接給Item賦值就可,不用自己拼語句,現在也逐漸發現里面大有文章。回想F11,這個時候的block其實是處于Enter-query狀態,輸入的東西Form會自動拼成Where語句(當然還要加上原來的default where,假如有Copy from item,也要加上),對于每個Item上輸入的值,一般是用 = ,假如有,就解析為like,假如有#,則把后邊的表達式(比如between,甚至是子查詢)直接作為條件;而當form內部執行堆棧Navigate到Pre-query時,block也是處于Enter-query狀態,道理和F11一樣,我們只管按業務查詢要求對Item賦值,剩下的就交給Form去處理了;需要注重的是當處于enter-query狀態的block,是使用query length屬性來限制輸入的數據長度,而不是通常的maximum lengh,只不過query length默認是0,即等于maximum lengh,所以會出現當用app_find.query_range時長度不夠的情況。
標簽: Oracle 數據庫
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
亚洲一区二区av在线| 国产精品人人做人人爽人人添| 欧美日韩精品一区二区天天拍小说| 久久久久久一级片| 亚洲国产欧美日韩另类综合| 99精品欧美一区| 色狠狠桃花综合| 日本一区二区三区国色天香 | 国产成人在线视频免费播放| 91国产免费看| 日韩av不卡一区二区| 在线视频日韩| 成人av网站在线| 欧美三级韩国三级日本三斤| 性做久久久久久久久| 久久 天天综合| 久久久蜜桃一区二区人| 亚洲综合久久av| 影音先锋亚洲精品| 中文字幕欧美三区| 91天堂素人约啪| 久久久久久久国产精品影院| 欧美体内she精视频| 秋霞影院一区二区| 久久精品男女| 亚洲成人免费观看| 亚洲一区二三| 自拍偷拍亚洲综合| 欧美视频四区| 91福利视频久久久久| 亚洲精品视频在线看| 成人小视频在线| 精品国产一区二区三区不卡 | 日本美女一区二区三区| 亚洲高清资源| 国产日韩欧美综合在线| 国产福利一区二区三区视频| 91高清视频在线| 国产精品久久二区二区| 欧美日本韩国一区二区三区| 精品久久久三级丝袜| 激情五月婷婷综合网| 久久九九国产| 亚洲乱码国产乱码精品精小说| 欧美另类视频| 日韩欧美国产三级| 精品系列免费在线观看| 美脚丝袜一区二区三区在线观看| 中文字幕一区二区在线观看| 99热精品国产| 日韩一级免费观看| 国产自产视频一区二区三区| 色综合久久九月婷婷色综合| 亚洲制服丝袜av| 在线日本成人| 亚洲国产经典视频| 欧美不卡视频| 久久婷婷色综合| 成人免费福利片| 制服丝袜成人动漫| 精品一区二区久久| 欧美性大战久久久| 亚洲综合色丁香婷婷六月图片| 狠狠入ady亚洲精品| 中文av一区二区| 99久久久无码国产精品| 日韩精品一区二区三区在线播放| 国产在线精品不卡| 欧美午夜精品久久久| 日韩av不卡一区二区| 噜噜噜躁狠狠躁狠狠精品视频| 一区二区三区在线观看动漫| 亚洲高清资源综合久久精品| 国产精品久久久久久久久搜平片| 91女厕偷拍女厕偷拍高清| 精品久久久久久久人人人人传媒| 国精产品一区一区三区mba视频 | 成人午夜在线免费| 日韩欧美激情在线| 国产91丝袜在线18| 在线观看亚洲精品视频| 亚洲成人午夜影院| 久久久久久久久久久久久久一区| 午夜激情综合网| 亚洲欧美日韩在线综合| 亚洲成a人在线观看| 免费久久99精品国产自在现线| 亚洲午夜精品17c| 国产精品视频久久一区| 日韩一区二区电影在线| 成人一级视频在线观看| 日韩欧美国产综合一区| 国产福利一区二区| 久久先锋影音av鲁色资源网| 欧美体内she精视频在线观看| 国产精品美女久久久久久久久久久 | 久久精品国产999大香线蕉| 性欧美暴力猛交另类hd| 亚洲大片免费看| 色香蕉成人二区免费| 不卡一区二区三区四区| 久久久午夜电影| 黑人一区二区三区四区五区| 亚洲乱码中文字幕综合| 亚洲一区三区视频在线观看| 爽爽淫人综合网网站| 91国产福利在线| 国精产品一区一区三区mba桃花 | 色av成人天堂桃色av| 久久国内精品视频| 欧美一区二区国产| 午夜精品视频| 亚洲最新视频在线播放| 日本韩国精品在线| 成人免费视频网站在线观看| 中文字幕精品在线不卡| 亚洲久久成人| 日韩精品久久理论片| 7777精品伊人久久久大香线蕉经典版下载| 成人黄页在线观看| 久久精品视频一区| 国产欧美激情| 看电影不卡的网站| 精品入口麻豆88视频| 亚洲激情午夜| 日日嗨av一区二区三区四区| 制服丝袜激情欧洲亚洲| 欧美日韩专区| 丝袜美腿高跟呻吟高潮一区| 555www色欧美视频| 国产精品二区影院| 日韩va亚洲va欧美va久久| 日韩免费一区二区| 99精品视频免费全部在线| 开心九九激情九九欧美日韩精美视频电影| 欧美电影一区二区| 欧美99在线视频观看| 亚洲高清免费在线| 日韩一区二区三区免费看 | 中文字幕欧美国产| 亚洲毛片av| 国产裸体歌舞团一区二区| 国产欧美视频在线观看| 久久精品人人| 99久久精品免费| 亚洲国产sm捆绑调教视频| 欧美肥妇free| 韩日视频一区| 亚洲成人av中文| 欧美一区欧美二区| 欧美日韩一区二区三区在线视频| 精品亚洲porn| 亚洲男人天堂av网| 91精选在线观看| 一区二区三区精品视频在线观看| 国产福利一区二区三区视频| 亚洲一区二区三区四区的 | 欧美在线综合视频| 亚洲激情一区二区三区| 国产乱理伦片在线观看夜一区 | 久久亚洲一区二区| 午夜国产一区| 狠狠色综合日日| 亚洲乱码中文字幕| 精品国产乱码久久久久久夜甘婷婷 | 亚洲一区中文在线| 日韩欧美二区三区| 乱码第一页成人| 欧美在线首页| 激情综合网av| 亚洲同性同志一二三专区| 欧美一区二区视频网站| 亚洲一区免费| 欧美va亚洲va日韩∨a综合色| 国内精品免费**视频| 亚洲一卡二卡三卡四卡| 久久精品一区八戒影视| 欧美体内she精高潮| 国产欧美91| 91亚洲资源网| 久久精品国产一区二区三区免费看| 久久久一区二区三区| 在线欧美日韩国产| 欧美a级片一区| 九九热在线视频观看这里只有精品| 日本一区二区三区电影| 欧美日韩一区三区| 午夜一区不卡| 奇米影视7777精品一区二区| 欧美国产欧美亚州国产日韩mv天天看完整| 欧美私模裸体表演在线观看| 99视频精品免费观看| 欧美激情第二页| 国产成人自拍在线| 美腿丝袜亚洲综合| 亚洲一区二区五区| 中文字幕在线不卡一区| 久久久久久久久伊人| 5月丁香婷婷综合| 欧美色爱综合网|