Delete方法:Delete方法用于刪除表中的記錄,調(diào)用Delete方法時(shí),將會(huì)刪除表中當(dāng)前的記錄,并且自動(dòng)地將記錄指針移到被刪記錄的下一條記錄,同時(shí)將數(shù)據(jù)集置成Browse狀態(tài)。
Cancel方法:Cancel方法用于取消當(dāng)前的操作,當(dāng)程序還沒(méi)有調(diào)用Post方法,將對(duì)記錄的修改寫(xiě)回?cái)?shù)據(jù)庫(kù)表時(shí),調(diào)用Cancel方法,可以將記錄恢復(fù)到?jīng)]有修改之前的狀態(tài)。并且在調(diào)用Cancel方法時(shí),它總是將數(shù)據(jù)集置成Browse狀態(tài)。
AppendRecord方法和InsertRecord方法:這兩個(gè)方法分別與Append方法和Insert方法相似。它們都是用于在表中插入一條新記錄,但AppendRecord方法和InsertRecord方法比Append和Insert方法更簡(jiǎn)單更方便一些,它們直接在表中插入一條新記錄,新記錄的各個(gè)字段值作為AppendRecord或InsertRecord方法的參數(shù)傳遞給新記錄并且不需顯式地調(diào)用post方法,將插入的新記錄寫(xiě)回?cái)?shù)據(jù)庫(kù)表。在給插入的新記錄賦字段值時(shí),將由多個(gè)字段值組成的數(shù)組作為AppendRecord或InsertRecord的參數(shù),在字段值數(shù)組中可以為每一個(gè)字段提供一個(gè)值,或從左邊一列開(kāi)始依次為任意多個(gè)字段賦值。也就是說(shuō),用戶可以從數(shù)據(jù)庫(kù)表的最左一列起,把許多列的值同時(shí)傳遞給InsertRecord,直到所有的字段被賦值,用戶也可以省略字段序列后面的的一些字段值,InsertRecord會(huì)用空值來(lái)填充這些字段:用戶也可以對(duì)那些明確希望用空填充的字段傳遞保留字NIl。
例如:如果表Country有Name,Captial,Continent,Area和Population字段,并且數(shù)據(jù)集部件Table1與它相連,下面的代碼便可以在Country表中當(dāng)前記錄的后面插入一條新記錄。
Table1.InsertRecord (["中國(guó)","北京","五洲"]);
在上述代碼中沒(méi)有為Area和population字段賦值,InsertRecord會(huì)用空值來(lái)填這兩個(gè)字段。
SetRecords方法:調(diào)用該方法可以修改表中當(dāng)前記錄的多個(gè)字段的值,調(diào)用該方法之前必須將數(shù)據(jù)集部件置成編輯狀態(tài),調(diào)用該方法之后,還要調(diào)用post方法,才能真正將當(dāng)前記錄的修改寫(xiě)回?cái)?shù)據(jù)庫(kù)表。調(diào)用SetRecord方法時(shí),被修改的字段值必須要與表中實(shí)際存在的字段名對(duì)應(yīng),并且數(shù)據(jù)類型要相匹配。例如,下面的代碼是修改上面剛剛插入的那條記錄。
Table1.Edit;
Tabel1.SetRecord(, , ,9600000,1200000000);
Tabel1.post;
這一段代碼是修改上面剛剛插入的那條記錄的Area 和Population 字段的值,而對(duì)Name,Continent和Captial字段沒(méi)有修改。
在數(shù)據(jù)集部件中,還有一個(gè)重要方法Abort方法,該方法是用于取消其他方法的調(diào)用的,如在插入記錄、修改記錄和刪除記錄之前,往往需要用戶確認(rèn)是否真的要執(zhí)行這種操作,此時(shí)調(diào)用Abort方法便可取消各種方法的調(diào)用,下面的代碼是在用戶刪除一條記之前,讓用戶確認(rèn)是否真的要執(zhí)行刪除操作。
Tabel1.BeforeDelete(DataSet:TDataSet);
If MessageDlg('真的要?jiǎng)h除記錄嗎?',
mtConfirmation,mbyesNoCanel,0 <> mryes then
Abort; {取消刪除操作}
關(guān)于書(shū)簽(BookMark)操作;
書(shū)簽操作主要用于在表中快速地定位記錄指針,在應(yīng)用程序中常常要保存記錄指針?biāo)诘奈恢,在進(jìn)行其他處理之后,希望能快速地返回到先前指針?biāo)诘奈恢,此時(shí),使用書(shū)簽將顯得特別有用。有關(guān)書(shū)簽操作,Delphi提供了三個(gè)方法,它們是:
● GetBookMark
● GotoBookMark
● FreeBokMark
這三個(gè)方法一般都是在一起使用,GetBookMark方法返回一個(gè)TBookMark類型的變量,該變量包含著指向當(dāng)前記錄的指針,GotoMark方法用于快速地將記錄指針定位到具有書(shū)簽的記錄處。FreeBookmark方法是與GetBookMark方法相反的操作,它釋放書(shū)簽標(biāo)志。下面的程序代碼闡述了書(shū)簽操作的一般方法:
BookMark : TBookMark;
BookMark := Table1.GetBookMark; {對(duì)當(dāng)前記錄作書(shū)簽標(biāo)志}
Table1.DisalbeControls; {切斷Table1與數(shù)據(jù)察覺(jué)部件的聯(lián)系}
Table.First
While Not EOF Do {對(duì)表中全部記錄進(jìn)行其他處理}
begin
Tabel1.Next;
end;
Tabel1.GotoBookMark(BookMark)
Table1.enableControls; {重新定位記錄指針回到原來(lái)的位置}
Tabel1.FreeBookMark(BookMark); {刪除書(shū)簽BookMark標(biāo)志}
相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試試題及答案解析專題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |