第10章窗口及控件2-游標_第1頁
第10章窗口及控件2-游標_第2頁
第10章窗口及控件2-游標_第3頁
第10章窗口及控件2-游標_第4頁
第10章窗口及控件2-游標_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、l利用下拉列表框和游標技術(shù)實現(xiàn)系統(tǒng)登錄功能,界面如下:l與下拉列表框類似控件列表框ListBoxl名稱前綴:lb_圖形列表框PictureListBoxl名稱前綴:plb_下拉圖形列表框DropDownPictureListBoxl名稱前綴:ddplb_l與下拉列表框類似控件比較圖形列表框和圖形下拉列表框比其他兩種多一個圖片,屬性中為Pictures標簽頁中設(shè)定l下拉列表框?qū)傩?l名字前綴:ddlb_l列表項:items標簽頁中列出lAllowEdit:選中后,允許用戶編輯列表項lShowList:選中后,下拉列表框僅用于列表顯示,不具備下拉功能。相當于列表框。事件lSelectionchan

2、ged事件:改變選項后觸發(fā)該事件lDoubleClicked事件:雙擊某選項時觸發(fā)lModified事件:列表框編輯確認后觸發(fā)lGetFocus事件:下拉列表框獲得焦點時 觸發(fā)lLoseFocus事件:失去焦點時觸發(fā)l下拉列表框常用函數(shù):關(guān)于列表項的操作Additem( )l在列表項的尾部追加一個新的列表項,參數(shù)為插入項的字符串,如ddlb_1.additem(計算機系)DeleteItem( )l在下拉列表框中刪除項,參數(shù)為列表項的索引號(int類型),例如,ddlb_1.deleteitem(3)為刪除列表框中第三項。InsertItem( )在指定的索引號所指的列表項之前插入新的列表項,

3、例如,ddlb_1.insertitem(“副研究員”,3),即在第三項之上插入“副研究員”FindItem( )lInteger listboxname.FindItem ( text, index )l下拉列表框常用函數(shù):關(guān)于列表項的操作FindItem( )l定義 Integer listboxname.FindItem ( text, index )l含義:含義:從index指示的列表項的下一項開始查找包含text字符串的第一個列表項,index=0表示從所有列表項中查找。返回值為滿足條件的第一個列表項的索引。l例如:Integer indexlindex=ddlb_1.FindIte

4、m ( “副”, 0 )l則index=1lindex=ddlb_1.FindItem ( “副”, 1 )l則index=8l列表框常用函數(shù):關(guān)于列表項的操作listboxname.SelectedItem ( )功能:得到選中的列表項,僅用于列表框和圖片列表框參數(shù):無返回值:string類型,返回列表框中當前被選中的列表項字符串;如果沒有任何項被選中,則返回空串;如果列表框為空,則返回空值,即NULL例如,string texttext=lb_1. SelectedItem ( )則,返回“工程師”l下拉列表框和圖片下拉列表框利用Text屬性取值,如ddlb_1.textl游標技術(shù) (讀取

5、多行數(shù)據(jù))l當需要讀取多條記錄時,就需要使用游標進行操作。其典型運用過程一般為: l(1)用DECLARE聲明游標;l(2)用OPEN語句打開游標;l(3)使用FETCH語句讀取一行數(shù)據(jù);l(4)處理數(shù)據(jù);l(5)判斷是否已經(jīng)讀完所有數(shù)據(jù),未讀完時重復(fù)執(zhí)行(3)(5)步;l(6)使用CLOSE語句關(guān)閉游標。l1DECLARE語句l使用游標前需要用DECLARE語句聲明游標,其語法格式為:lDECLARE CursorName CURSOR FOR SelectStatementlUSING TransactionObject;l其中,CursorName是游標的名稱,可以使用任何有效的標識符來

6、表示;SelectStatement是任何有效的SELECT語句;TransactionObject是事務(wù)對象名,缺省時使用SQLCA。l2OPEN語句lOPEN語句打開已經(jīng)聲明的游標并執(zhí)行相應(yīng)的SELECT語句。其語法格式為:lOPEN CursorName;l其中CursorName是已經(jīng)用DECLARE語句聲明的游標名。 l3FETCH語句lFETCH語句從游標中讀取當前記錄并把它保存到指定的變量中。當數(shù)據(jù)庫支持下述用法時,還可以使用FETCH FIRST、FETCH PRIOR、FETCH LAST。FETCH語句的語法格式為:lFETCH CursorName INTO HostVa

7、riableList;l其中CursorName是OPEN語句打開的游標名,HostVariableList是與SELECT語句中選擇字段相對應(yīng)的綁定變量列表。l4CLOSE語句lCLOSE語句關(guān)閉先前打開的游標。其語法格式為:lCLOSE CursorName ;l其中CursorName是先前打開游標的名稱。l關(guān)閉游標后,就不能再使用FETCH語句從游標中讀取數(shù)據(jù)了。l如果需要在程序中連接數(shù)據(jù)庫就必須通過嵌入式SQL來完成,有時候我們需要在程序中直接使用SQL語句操作數(shù)據(jù)庫。PowerScript提供了一整套嵌入式SQL語句。lPowerScript支持在程序中使用嵌入式SQL語句,并且支

8、持在SQL語句中使用具體數(shù)據(jù)庫管理系統(tǒng)(DBMS)特有的SQL語句、函數(shù)和保留字,實際上,對于SQL語句,PowerBuilder在將其發(fā)送到DBMS之前,并不做任何處理,而由DBMS完成相應(yīng)操作,最后PowerBuilder得到處理結(jié)果。l整個SQL語句可以寫在一行,也可以寫成更清晰易懂的多行格式,不需使用斷行續(xù)行符,只要在整個語句結(jié)束處加上一個分號(;)分號(;)即可。在SQL語句中可以使用常量或合法的變量,但使用變量時須在變量前加個冒號(:)(通常稱做綁定變量),多個變量或常量之間用逗號(,)分隔。l一 數(shù)據(jù)庫連接的建立與斷開l1使用CONNECT建立與數(shù)據(jù)庫的連接lCONNECT是每個

9、訪問數(shù)據(jù)庫的PowerBuilder程序必須使用的語句,它的功能是通過事務(wù)對象將應(yīng)用程序與數(shù)據(jù)庫建立連接,連接成功后,其它SQL語句和數(shù)據(jù)窗口才能通過事務(wù)對象對數(shù)據(jù)庫進行操作。lCONNECT語句的語法格式為:lCONNECT USING TransactionObject;l其中,TransactionObject是事務(wù)對象,在執(zhí)行該語句前,必須正確設(shè)置事務(wù)對象的數(shù)據(jù)庫連接屬性。方括號( )表示該成分可以省略,省略時使用默認的事務(wù)對象SQLCA。 l2使用DISCONNECT斷開與數(shù)據(jù)庫的連接lDISCONNECT語句斷開與數(shù)據(jù)庫的連接,執(zhí)行該語句時,它首先執(zhí)行COMMIT語句(事務(wù)提交語句

10、),完成事務(wù)提交,然后斷開與數(shù)據(jù)庫的連接。lDISCONNECT語句的語法格式為: lDISCONNECT USING TransactionObject;l其中,TransactionObject是前面用CONNECT語句連接的事務(wù)對象名。 l二二 提交與回滾事務(wù)提交與回滾事務(wù)l1提交事務(wù)語句提交事務(wù)語句COMMITCOMMIT語句提交事務(wù),完成數(shù)據(jù)庫的物理修改。執(zhí)行該語句后,將關(guān)閉所有先前打開的游標(CURSOR)和過程(PROCEDURE),并開始一個新的事務(wù)。COMMIT語句的語法格式為:COMMIT USING TransactionObject;其中,TransactionObje

11、ct是事務(wù)對象名,缺省時使用事務(wù)對象SQLCA。l2回滾事務(wù)語句回滾事務(wù)語句ROLLBACKROLLBACK(回滾)語句放棄自上一個COMMIT、ROLLBACK或CONNECT語句以來的所有數(shù)據(jù)庫操作,關(guān)閉所有的游標和過程,并開始一個新的事務(wù)。其語法格式為:ROLLBACK USING TransactionObject ;其中,TransactionObject是事務(wù)對象名,缺省時使用事務(wù)對象SQLCA。 l三三 單行檢索語句單行檢索語句SELECT單行SELECT語句從數(shù)據(jù)庫中檢索一條記錄,如果找到多條滿足條件的記錄,則產(chǎn)生錯誤。其語法格式為:SELECT 字段名列表 INTO 變量列表

12、FROM 表名 WHERE 檢索條件檢索條件USING 事務(wù)對象名稱;例如:select count(*)into :snamefrom passwordwhere name=:name and pass=:pwd;l四 插入語句INSERT其語法格式為:INSERT INTO 表名(字段名列表)VALUES (值列表)USING 事務(wù)對象名 ;l其中,字段名之間用逗號分隔,值列表是列的賦值,程序中可以使用常量,也可以使用綁定變量(PowerScript變量前加個冒號)。l例如pwd= 0002Insert into password(name,pass) values (“ 張三張三”, :

13、pwd); l五 刪除語句DELETEl其語法格式為:DELETE FROM 表名WHERE 刪除條件USING 事務(wù)對象名 ;l刪除條件,滿足該條件的行被刪除,事務(wù)對象名缺省時使用SQLCA。l例如: name=sle_1.textlDelete from password Where name=:name;lDelete from password where name= 張三l六 修改語句UPDATElUPDATE語句修改表中指定的數(shù)據(jù),其語法格式為:lUPDATE 表名lSET 字段名 =值 ,字段名 = 值 ,.lWHERE 更新條件lUSING 事務(wù)對象名 ;l例如lupdate xschlSet score=score+10,bkscore=0lWhere left(xh,5)= 02511 and course_no= 00005 ;l七 檢查SQL語句的執(zhí)行情況l每當執(zhí)行一條SQL語句后,與該語句相關(guān)的事務(wù)對象的SQLCode屬性都給出一個值指

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論