freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第9章vb數(shù)據(jù)庫(kù)編程技術(shù)-文庫(kù)吧資料

2024-08-24 06:50本頁(yè)面
  

【正文】 |部件”菜單命令選擇Microsoft ADO Data Control (OLEDB)”選項(xiàng),將ADO數(shù)據(jù)控件添加到工具箱。Connection對(duì)象Error對(duì)象Error集合Command對(duì)象Parameter對(duì)象Parameter集合Recordset對(duì)象Field對(duì)象Field集合 ADO對(duì)象模型 ADO對(duì)象描述對(duì)象名描 述Connection連接數(shù)據(jù)來(lái)源Command從數(shù)據(jù)源獲取所需數(shù)據(jù)的命令信息Recordset所獲得的一組記錄組成的記錄集Error在訪問(wèn)數(shù)據(jù)時(shí),由數(shù)據(jù)源所返回的錯(cuò)誤信息Parameter與命令對(duì)象有關(guān)的參數(shù)Field包含了記錄集中某個(gè)字段的信息 要想在程序中使用ADO對(duì)象,必須先為當(dāng)前工程引用ADO的對(duì)象庫(kù)。它是一種ActiveX對(duì)象,采用了被稱為OLE DB的數(shù)據(jù)訪問(wèn)模式,是數(shù)據(jù)訪問(wèn)對(duì)象DAO、遠(yuǎn)程數(shù)據(jù)對(duì)象RDO和開放數(shù)據(jù)庫(kù)互連ODBC三種方式的擴(kuò)展。使用ODBC的另一個(gè)好處是當(dāng)作為數(shù)據(jù)庫(kù)源的數(shù)據(jù)庫(kù)服務(wù)器上的數(shù)據(jù)庫(kù)管理系統(tǒng)升級(jí)或轉(zhuǎn)換到不同的數(shù)據(jù)庫(kù)管理系統(tǒng)時(shí),客戶機(jī)端應(yīng)用程序不需作任何改變,因此利用ODBC開發(fā)的數(shù)據(jù)庫(kù)應(yīng)用程序具有很好的移植性。ODBC提供了一個(gè)開放的、標(biāo)準(zhǔn)的能訪問(wèn)從PC機(jī)、小型機(jī)到大型機(jī)數(shù)據(jù)庫(kù)數(shù)據(jù)的接口。(3)文件數(shù)據(jù)源:文件數(shù)據(jù)源是ODBC ,可用于企業(yè)用戶,ODBC驅(qū)動(dòng)程序也安裝在用戶的計(jì)算機(jī)上。任何用戶都不能使用其他用戶創(chuàng)建的用戶數(shù)據(jù)源。數(shù)據(jù)源分為以下三類: (1)用戶數(shù)據(jù)源:用戶創(chuàng)建的數(shù)據(jù)源,稱為“用戶數(shù)據(jù)源”。數(shù)據(jù)源(Data Source Name,簡(jiǎn)稱DSN)是驅(qū)動(dòng)程序與DBS連接的橋梁,數(shù)據(jù)源不是DBS,而是用于表達(dá)一個(gè)ODBC驅(qū)動(dòng)程序和DBMS特殊連接的命名。4.?dāng)?shù)據(jù)源數(shù)據(jù)源是指任一種可以通過(guò)ODBC連接的數(shù)據(jù)庫(kù)管理系統(tǒng),它包括要訪問(wèn)的數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)的運(yùn)行平臺(tái)。此管理器的主要作用是用來(lái)裝載ODBC驅(qū)動(dòng)程序、管理數(shù)據(jù)源、檢查ODBC參數(shù)的合法性等。如果在Windows 95和Windows NT環(huán)境下沒(méi)有這個(gè)圖標(biāo),說(shuō)明沒(méi)有安裝ODBC驅(qū)動(dòng)程序管理器。1.ODBC數(shù)據(jù)庫(kù)應(yīng)用程序應(yīng)用程序的主要任務(wù)包括:建立與數(shù)據(jù)源的連接;向數(shù)據(jù)源發(fā)送SQL請(qǐng)求;接收并處理請(qǐng)求的結(jié)果;斷開與數(shù)據(jù)源的連接等。9.4.2 ODBC體系結(jié)構(gòu)ODBC驅(qū)動(dòng)程序類似于Windows下的打印驅(qū)動(dòng)程序,對(duì)用戶來(lái)說(shuō),驅(qū)動(dòng)程序屏蔽了不同對(duì)象(數(shù)據(jù)庫(kù)系統(tǒng)或打印機(jī))間的差異。使用ODBC開發(fā)數(shù)據(jù)庫(kù)應(yīng)用時(shí),應(yīng)用程序調(diào)用的是標(biāo)準(zhǔn)的ODBC函數(shù)和SQL語(yǔ)句,數(shù)據(jù)庫(kù)底層操作由各個(gè)數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序完成。為了解決這些問(wèn)題,微軟公司開發(fā)了ODBC(Open DataBase Connectivity,即開放數(shù)據(jù)庫(kù)互連)。例如,在一個(gè)單位中,財(cái)務(wù)、生產(chǎn)和技術(shù)等部門常根據(jù)自身專業(yè)的特點(diǎn)選擇不同的DBMS,而建立企業(yè)級(jí)管理信息系統(tǒng)時(shí),需要同時(shí)訪問(wèn)各個(gè)部門的數(shù)據(jù)庫(kù)。在用戶硬件平臺(tái)或操作系統(tǒng)發(fā)生變化時(shí),應(yīng)用程序需要重新編寫。本例通過(guò)Picture1_DblClick事件來(lái)完成剪貼板到Picture1控件的復(fù)制,當(dāng)移動(dòng)記錄指針時(shí),Picture1控件內(nèi)的照片存入數(shù)據(jù)庫(kù),此外,也可以使用OLE拖放技術(shù)將照片圖形文件拖放到Picture1控件或其他圖形容器內(nèi)。Private Sub Data1_Validate(Action As Integer, Save As Integer) If = And (Action = 6 Or ) Then MsgBox 數(shù)據(jù)不完整,必須要有學(xué)號(hào)! End If If Action = 1 And Action = 4 Then = 新增 = 修改 = True = True = True = False End IfEnd Sub關(guān)于照片的輸入,較簡(jiǎn)單的方法是通過(guò)剪貼板將照片圖片復(fù)制到Picture1控件。在本例中被學(xué)號(hào)字段所約束的綁定控件是Text1,Action=6表示Update操作()。需要注意的是:對(duì)于一條新記錄或編輯過(guò)的記錄必須要保證數(shù)據(jù)的完整性,這可通過(guò)Data1_Validate事件過(guò)濾無(wú)效記錄。 39。 amp。當(dāng)記錄集中的記錄全部被刪除后,再執(zhí)行Move語(yǔ)句將發(fā)生錯(cuò)誤,這時(shí)由On Error Resume Next語(yǔ)句處理錯(cuò)誤。該語(yǔ)句表示在程序運(yùn)行時(shí)發(fā)生錯(cuò)誤,忽略錯(cuò)誤行,繼續(xù)執(zhí)行下一語(yǔ)句。新增記錄后,需再次單擊Command1調(diào)用Update方法確認(rèn)添加的記錄,再將提示文字再改為“新增”,并使“刪除”、“修改”和“查找”按鈕可用,而使“放棄”按鈕不可用。 編程建立增、刪、改、查功能 Command1_Click事件的功能根據(jù)按鈕提示文字調(diào)用AddNew方法或Update方法,并且控制具他4個(gè)按鈕的可用性。 注意:如果要放棄對(duì)數(shù)據(jù)的所有修改,可用Refresh方法,重讀數(shù)據(jù)庫(kù),沒(méi)有調(diào)用Update方法,數(shù)據(jù)的修改沒(méi)有寫入數(shù)據(jù)庫(kù),所以這樣的記錄會(huì)在刷新記錄集時(shí)丟失。 (2)給各字段賦值。3.編輯記錄 數(shù)據(jù)控件自動(dòng)提供了修改現(xiàn)有記錄的能力,當(dāng)直接改變被數(shù)據(jù)庫(kù)所約束的綁定控件的內(nèi)容后,需單擊數(shù)據(jù)控件對(duì)象的任一箭頭按鈕來(lái)改變當(dāng)前記錄,確定所做的修改。因此,你必須移動(dòng)記錄指針?biāo)⑿陆壎丶?,—般采用移至下一記錄的處理方法? 注意:在使用Delete方法時(shí),當(dāng)前記錄立即刪除,不加任何的警告或者提示。(2)調(diào)用Delete方法。為此,可在調(diào)用Update方法后,使用MoveLast方法將記錄指針再次移到新記錄上。 注意:如果使用AddNew方法添加新的記錄,但是沒(méi)有使用Update方法而移動(dòng)到其他記錄,或者關(guān)閉記錄集,那么所做的輸入將全部丟失,而且沒(méi)有任何警告。給字段賦值格式為:(”字段名”)=值。增加記錄的步驟為:(1)調(diào)用AddNew方法。數(shù)據(jù)庫(kù)記錄的增、刪、改操作需要使用AddNew、Delete、Edit、Update和Refresh方法。若在記錄集中多次使用同樣的Seek方法(參數(shù)相同),那么找到的總是同一條記錄。其語(yǔ)法格式為: parison,keyl,key2… Seek允許接受多個(gè)參數(shù),第1個(gè)是比較運(yùn)算符parison,Seek方法中可用的比較運(yùn)算符有=、=、=等。如果Find方法找到相匹配的記錄,則記錄定位到該記錄,Recordset的NoMatch屬性為False。 又例如:要在記錄集內(nèi)查找專業(yè)名稱中帶有“建”字的專業(yè): 專業(yè) Like ”*建*”字符串“*建*”匹配字段專業(yè)中帶有“建”字字樣的所有專業(yè)名稱字符串。這里,“專業(yè)”為數(shù)據(jù)庫(kù)Student記錄集中的字段名,在該字段中存放專業(yè)名稱信息。在構(gòu)造表達(dá)式時(shí),除了用普通的關(guān)系運(yùn)算外,還可以用Like運(yùn)算符。 (4)FindPrevious方法:從當(dāng)前記錄開始查找滿足條件的上一條記錄。 (2)FindLast方法:從記錄集的尾部向前查找滿足條件的第l條記錄。程序代碼如下:Private Sub Command2_Click() If Then End SubPrivate Sub Command3_Click() If Then End Sub7.Find方法使用Find方法可在指定的Dynaset或Snapshot類型的Recordset對(duì)象中查找與指定條件相符的一條記錄,并使之成為當(dāng)前記錄。通過(guò)對(duì)4個(gè)命令按鈕的編程代替對(duì)數(shù)據(jù)控件對(duì)象的4個(gè)箭頭按鈕的操作。 。(4)MovePrevious方法:移至上一條記錄。 (2)MoveLast方法:移至最后一條記錄。6.Move方法 使用Move方法可代替對(duì)數(shù)據(jù)控件對(duì)象的4個(gè)箭頭按鈕的操作遍歷整個(gè)記錄集。5.RecordCount屬性 RecordCount屬性對(duì)Recordset對(duì)象中的記錄計(jì)數(shù),該屬性為只讀屬性。4.Nomatch屬性 在記錄集中進(jìn)行查找時(shí),如果找到相匹配的記錄,則Recordset的NoMatch屬性為False,否則為True。3.Bookmark屬性 Bookmark屬性的值采用字符串類型,用于設(shè)置或返回當(dāng)前指針的標(biāo)簽。2.Bof和Eof的屬性 Bof判定記錄指針是否在首記錄之前,若Bof為True,則當(dāng)前位置位于記錄集的第1條記錄之前。下面列出記錄集常用的屬性和方法。在代碼中可以用該方法來(lái)確認(rèn)修改。 3. UpdateRecord方法當(dāng)對(duì)綁定控件內(nèi)的數(shù)據(jù)修改后,數(shù)據(jù)控件需要移動(dòng)記錄集的指針才能保存修改。因而我們可使用UpdateControls方法終止用戶對(duì)綁定控件內(nèi)數(shù)據(jù)的修改。在多用戶環(huán)境下,當(dāng)其他用戶同時(shí)訪問(wèn)同一數(shù)據(jù)庫(kù)和表時(shí),Refresh方法將使各用戶對(duì)數(shù)據(jù)庫(kù)的操作有效。9.3.3 數(shù)據(jù)控件的常用方法 數(shù)據(jù)控件的內(nèi)置功能很多,可以在代碼中用數(shù)據(jù)控件的方法訪問(wèn)這些屬性。例如,如果不允許用戶在數(shù)據(jù)瀏覽時(shí)清空性別數(shù)據(jù),可使用下列代碼:Private Sub Data1_Validate(Action As Integer, Save As Integer) If Save And Len(Trim(Text3)) = 0 Then Action = 0 MsgBox 性別不能為空!End IfEnd Sub 此代碼檢查被數(shù)據(jù)控件綁定的控件Text3內(nèi)的數(shù)據(jù)是否被清空。它通過(guò)Save參數(shù)(True或False)判斷是否有數(shù)據(jù)發(fā)生變化,Action參數(shù)判斷哪—種操作觸發(fā)了Validate事件。 當(dāng)要移動(dòng)記錄指針、修改與刪除記錄前或卸載含有數(shù)據(jù)控件的窗體時(shí)都觸發(fā)Validate事件。例如,:Private Sub Data1_Reposition() = + 1End Sub 這里,Recordset為記錄集對(duì)象,AbsolutePosition屬性指示當(dāng)前指針值(從0開始)。 控件屬性默認(rèn)控件名其它屬性設(shè)置Data1DatabaseName=”c:\”RecordsetType=0RecordSource=”基本情況”MSFlexGrid1DataSource=Data1FixCols=09.3.2數(shù)據(jù)控件的事件 1.Reposition事件 Reposition事件發(fā)生在一條記錄成為當(dāng)前記錄后,只要改變記錄集的指針使其從一條記錄移到另一條記錄,會(huì)產(chǎn)生Reposition事件。MsFlexGrid控件不是Visual Basic工具箱內(nèi)的默認(rèn)控件,需要在開發(fā)環(huán)境中選擇“工程|部件”菜單命令,并在隨即出現(xiàn)的對(duì)話框中選擇“MicroSoft FlexGrid Control ”選項(xiàng),將其添加到工具箱中。當(dāng)把數(shù)據(jù)網(wǎng)格控件的DataSource屬性設(shè)置為一個(gè)Data控件時(shí),網(wǎng)格控件會(huì)被自動(dòng)地填充,并且其列標(biāo)題會(huì)用Data控件的記錄集里的數(shù)據(jù)自動(dòng)地設(shè)置。如果改變了某個(gè)字段的值,只要移動(dòng)記錄,這時(shí)所作的改變存入數(shù)據(jù)庫(kù)中。單擊最左邊的按鈕顯示第l條記錄;單擊其旁邊的按鈕顯示上一條記錄;單擊最右邊的按鈕顯示最后一條記錄;單擊其旁邊的按鈕顯示下—條記錄。5個(gè)文本框分別顯示基本情況表內(nèi)的字段:學(xué)號(hào)、姓名、性別、專業(yè)和出生年月的內(nèi)容,圖形框顯示每個(gè)學(xué)生的照片。通過(guò)單擊這些綁定控件的DataField屬性上的“…”按鈕,將下拉出基本情況表所含的全部字段,分別選擇與其對(duì)應(yīng)的字段照片、學(xué)號(hào)、姓名、性別、專業(yè)和出生年月,使之建立約束關(guān)系。 (2)將數(shù)據(jù)控件Data1的Connect屬性指定為Access類型,RecordSource屬性設(shè)置為“基本情況”表。本例中不需要編寫任何代碼,具體操作步驟如下: (1),在窗體上放置1個(gè)數(shù)據(jù)控件,一個(gè)圖形框、5個(gè)文本框和5個(gè)標(biāo)簽控件。基本情況表包含了6個(gè)字段,故需要用6個(gè)綁定控件與之對(duì)應(yīng)。 學(xué)生基本情況表結(jié)構(gòu)字段名類型寬度學(xué)號(hào)Text6姓名Text10性別Text2專業(yè)Text10出生年月Date8照片Binary0 學(xué)生成績(jī)表結(jié)構(gòu)字段名類型寬度學(xué)號(hào)Text6課程Text10成績(jī)Long4學(xué)期Text2用可視化數(shù)據(jù)管理器建立以上設(shè)計(jì)的數(shù)據(jù)庫(kù)及其表,表中數(shù)據(jù)可自行錄入。當(dāng)數(shù)據(jù)控件的BofAction屬性值設(shè)置為2時(shí),當(dāng)記錄指針移過(guò)記錄集結(jié)束位,數(shù)據(jù)控件會(huì)自動(dòng)向記錄集加入新的空記錄。如果修改了綁定控件內(nèi)的數(shù)據(jù),只要移動(dòng)記錄指針,修改后的數(shù)據(jù)會(huì)自動(dòng)寫入數(shù)據(jù)庫(kù)。綁定控件、。要使綁定控件能被數(shù)據(jù)庫(kù)約束,必需在設(shè)計(jì)或運(yùn)行時(shí)對(duì)這些控件的兩個(gè)屬性進(jìn)行設(shè)置:(1)DataSource屬性DataSource屬性通過(guò)指定—個(gè)有效的數(shù)據(jù)控件連接到一個(gè)數(shù)據(jù)庫(kù)上。 EofAction和BofAction屬性屬性取值操作BofAction0控件重定位到第—個(gè)記錄1移過(guò)記錄集開始位,定位到一個(gè)無(wú)效記錄,觸發(fā)數(shù)據(jù)控件對(duì)第一個(gè)記錄的無(wú)效事件ValidateEofAction0控件重定位到最后—個(gè)記錄1移過(guò)記錄集結(jié)束位,定位到一個(gè)無(wú)效記錄,觸發(fā)數(shù)據(jù) 控件對(duì)最后一個(gè)記錄的無(wú)效事件Validate
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1