国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

PL/SQL DEVELOPER 6 模板格式設計應用指南(原譯)

2024-07-21 02:05:40
字體:
來源:轉載
供稿:網友

pl/sql developer 6模板使用系列文檔(二)







模板格式設計應用指南(譯)








 


 



創建和修改模板







要修改已經存在的模板,請選擇要修改的模板單擊右鍵打開快捷菜單。這將打開顯示模板內容的文本編輯器。文本中含有完整的模板內容,包括變量、查詢等等。下面章節將介紹模板文本的詳細格式。







要創建一個新的模板,右擊你要創建的文件夾,從快捷菜單中選擇 [new template]。你首先要輸入模板的名稱,然后將會彈出模板編輯器。你也可以通過[new folder]這個菜單來創建一個新的文件夾。







模板文本







模板文本包括文本及變量。文本可以不會經過任何修改簡單的拷貝到源文件。拿一個僅包含文本”commit;”名為commit的模板為例,雙擊模板后,commit;這段文本將直接插入到原文的光標位置。在模板中用中括號括起為的表示為變量(見下文),所以如果你要將中括號當做一個文本使用請用兩個中括號代替,例如:[[option]]







自定義變量







模板文本中的變量代碼將被文本置換,這些置換的文本可以是一個固定的值,像當前日期或者當前的用戶名,或者是用戶特別定義的東西。當調用模板時這些用戶變量將顯示在打開的窗體上。下面是一個定義了變量名字[name]和類型[type]函數模板的例子:







create or replace function [name] return [type] is







begin







  return(result);







end [name];







當調用模板時,用戶可以將特定的值賦于name和type這兩個變量。如你所看到的,name變量使用兩次,用戶將只被提示一次,并且都被替換成相同的值。







l         缺省值







為變量定義的缺省值可以簡單的放在變量名稱的后面。你可以使用下面的描述來定義varchar2是缺省的函數類型function type:







[type = varchar2]







l         固定列表







對于一些有固定值列表的變量,你可以定義它的選擇列表值。如:要限制function的變量類型type為varchar2, number 和 date,你可按下面的方法定義:







[type = varchar2, *number, date]







第一個帶星號的列表值表示列表缺省值







l         可選列表







對于要提供給用戶一列選擇值,又允許輸入其它的值的變量,在列表的最后增加...這個值即可。







[type = varchar2, number, date, ...]







l         可描述列表







要用文本替換列表內容,你可以為每個列表定義描述文本,就像下面例子一樣,描述文本加上冒號再加上值:







[level = write no database state:wnps, read no database state:rnds, ...]







l         復選框







真假值選擇的變量你可以用復選框定義。放置一個斜線/在兩個值的中間,斜線左邊表示未選中時的值,右邊表示選中的值。下面的變量表示在復選框未選中時將插入文本for each row,當復選框選中后將插入文本for each statement。







[statement level? = for each row / for each statement]







如果你的文本中包含特殊的字符(如comma's, brackets, and so on),你可以用括號括起來。下面是一個使用用戶自定義變量創建觸發器trigger的模板例子。







create or replace trigger [name]







  [fires = before, after, instead of] [event = insert, update, delete, ...]







  on [table or view] 







  [statement level? = for each row/for each statement]







declare







  -- local variables here







begin;







end [name];







提示,你可以在一個模板中使用斜線分隔符分隔的方法創建多個程序單元。通過這種方法你可以為一些格式在一個程序文件中創建一個模板。







當使用這個模板時,用戶將彈出如下所示的對話框提示輸入變量的值:



















固定變量







除了用戶自定義變量外你還可以附加使用固定變量。這些用來置換變量的文本不是由用戶定義,而是由系統(date, username)或者是模板開發人員(queries, text)定義。







l         系統變量







以下為定義的4個系統變量







$osuser  操作系統的用戶名







$dbuser 當前登錄數據庫的用戶







$date 當前日期







$time 當前時間







下面例子的頭兩行將插入操作系統的用戶及當前日期時間到源文件:







-- author  : $osuser







-- created : $date $time







-- purpose : [purpose]







procedure [name] is







begin







  ;







end [name];







注意系統變量在模板文本中不使用中括號,但是需在前面加$符號。







如果你不想采用系統變量,但要應用系統變量的原文本,你可以在文本的前面再增加第二個$符號。例如:







-- $$date$ $revision$







結果出來的文本將是$date$ $revision$。







l         光標位置







光標位置變量將定義當模板文本插入到編輯器后光標的定位。只要將[#]放置到想要的位置即可:







loop







  [#]







end loop;







l         查詢變量







你可以使用查詢來生成模板的列表值。下面的例子定義了一個查詢變量seq_query,接著應用到sequence變量的可選列表:







[$query seq_query =







        select lower(object_name) from user_objects







        where object_type = 'sequence'







        order by object_name]








 


 



select [sequence=$seq_query,...].nextval into [variable name] from dual;







sequence是一個可選列表,因為后面加了文本",...",意思是用戶可以手工輸入其它的值。查詢結果集可以簡單的看作是用逗號分隔的列表值。







l         包含和去除文本







你可以通過另一個變量來包含和去除模板的文字。在下面的例子里,當用戶輸入了查詢條件(search condition)的值后將自動加入where字符。







select [item list]







  into [variable list]







  from [table list]







 [+search condition=where] [search condition];







結果是,用戶不用在查詢條件[search condition]中鍵入'where'文本。要去除一塊文本,可以將"+變量名"改為"-變量名"。







l         文本變量







你可以在模板中定義文本變量,并且在模板的其它部分用這些變量。假如你想有選擇的包括一大塊文本,這是非常有用的。下面的例子中,可以根據用戶需要是否包括一個出錯處理塊。







[$text exception_block=







exception







  when no_data_found then ...







  when too_many_rows then ...







  when others then ...







end;]







select [item list]







  from [table list]







  into [variable list]







 where [search condition];







[exception block =/$exception_block]







模板圖標







在模板窗口的樹形列表中每個模板顯示一個圖標。模板窗口將查找與模板文件名相同的位圖文件。如模板cursor.tp,如果存在的話,它將使用相同文件夾下的cursor.bmp位圖,如果位圖不存在,它將查找當前目錄子目錄下的cursor.bmp文件。如果這個位圖還是沒有,它將查找當前目錄和子目錄的default.bmp文件。







用于模板圖標必須是16色的16*16大小的位圖。








 


 




 


 



葉正盛 (譯)







2005-03-23








 


 




 


 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长治市| 红河县| 德江县| 中超| 祁门县| 长汀县| 永兴县| 温宿县| 台州市| 塘沽区| 沿河| 斗六市| 石城县| 临沧市| 墨竹工卡县| 清涧县| 塘沽区| 将乐县| 房产| 宁津县| 乌拉特前旗| 阿尔山市| 阿合奇县| 凤冈县| 濮阳市| 沛县| 西乡县| 清远市| 城市| 西华县| 攀枝花市| 勃利县| 乌海市| 高平市| 阿克苏市| 乌拉特前旗| 东乡族自治县| 浑源县| 察雅县| 塔城市| 灯塔市|