《數(shù)據(jù)庫程序設(shè)計》第五章_第1頁
《數(shù)據(jù)庫程序設(shè)計》第五章_第2頁
《數(shù)據(jù)庫程序設(shè)計》第五章_第3頁
《數(shù)據(jù)庫程序設(shè)計》第五章_第4頁
《數(shù)據(jù)庫程序設(shè)計》第五章_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第五章數(shù)據(jù)操縱5.1表中記錄的定位5.2數(shù)據(jù)的傳遞5.3表中數(shù)據(jù)的刪除5.4表中數(shù)據(jù)的編輯5.5常見VFP文件操縱命令5.6排序5.7索引5.8數(shù)據(jù)統(tǒng)計命令5.1表中記錄的定位絕對定位格式:GO<記錄號>|top|bottom功能:記錄指針的絕對定位相對定位格式:skip<N>功能:將記錄指針從當(dāng)前記錄移動N個記錄。說明:N>0,指針向下移動,N<0時,向上移動。函數(shù)功能Bof()測試記錄指針是否在文件開始處(不是第一條記錄).返回邏輯值Deleted()測試當(dāng)前記錄是否加刪除標(biāo)記.返回邏輯值Eof()測試記錄指針是否在文件尾部(不是最后一條記錄).返回邏輯值5.1表中記錄的定位條條件件>>]]條滿滿錄,,到記記條件定位格式:locate[<范圍>]for[<

功能:在指定范圍中定位第一足<條件>的記錄為當(dāng)前記錄若想定位到下一條滿足條件的記使用命令continue菜單定位

打開表→瀏覽表→表菜單→轉(zhuǎn)錄→菜單項相當(dāng)于第一個Go

top最后一個Go

bottom下一個Skip

1上一個Skip

-1記錄號Go

<N>定位locate[<范圍>]for[<條件>]5.2數(shù)據(jù)的傳遞5.2.1將當(dāng)前記錄傳送到內(nèi)存變量格式:scatter

memvar功能:當(dāng)前記錄中的數(shù)據(jù)傳送到內(nèi)存變量說明:■內(nèi)存變量的名稱與字段名稱相同,引用時要用m.或m-加以區(qū)分?!隹墒褂胒ields子句:[fields<字段名表>|fields

like<通配字段名>|fields

except<通段名>]use學(xué)生.dbfGo

3Scatter

memvar?m.學(xué)號,m.姓名,m.生日5.2數(shù)據(jù)的傳遞5.2.2將當(dāng)前記錄傳送到數(shù)組格式:scatter

to<數(shù)組名>功能:當(dāng)前記錄中的數(shù)據(jù)傳送到數(shù)組說明:可使用fields子句:[fields<字段名表>|fields

like<通配字段名>|fields

except<通字段名>]use學(xué)生.dbfGo

3

Scatter

to

a?a(1),a(2),a(3)5.2數(shù)據(jù)的傳遞5.2.3將內(nèi)存變量的數(shù)據(jù)傳送到記錄格式:gather

memvar

功能:將內(nèi)存變量中的數(shù)據(jù)傳送到當(dāng)前記錄中與其同名的字段。補充:查看內(nèi)存變量命令格式:list|display

memory說明:list為卷屏方式顯示;display為分屏方式顯示Go

3Scatter

memvardisplay

memoryGo

5Gather

memvarlist5.2數(shù)據(jù)的傳遞5.2.4將數(shù)組中的數(shù)據(jù)傳送到記錄格式:gather

from<數(shù)組名>功能:將數(shù)組中的數(shù)據(jù)按次序傳送到當(dāng)前記錄。說明:可使用fields子句[fields<字段名表>|fields

like<通配字段名>|fields

except<通段名>]Go

3Scatter

to

bdisplay

memoryb(1)=”555555”Go

6Gather

from

blist5.2數(shù)據(jù)的傳遞5.2.5成批記錄傳送到數(shù)組格式:copy

to

array<數(shù)組名>[fields<字段名表>][<范圍>][for<條件>]功能:當(dāng)前選定的數(shù)據(jù)復(fù)制到數(shù)組中說明:單條記錄復(fù)制到一維數(shù)組中,多條記錄復(fù)制到二維數(shù)組中。Dimension

c(2,3)Copy

to

array

c

for生日>{^1989/01/01}?c(1,1),

c(1,2),

c(1,3)?c(2,1),

c(2,2),

c(2,3)5.2數(shù)據(jù)的傳遞5.2.6從數(shù)組向表追加記錄格式:append

from

array<數(shù)組名>功能:將數(shù)組中的數(shù)據(jù)追加到表后listappend

from

array

clist5.3表中數(shù)據(jù)的刪除邏輯刪除delete命令鼠標(biāo)單擊刪除標(biāo)記(由白變黑)表菜單→刪除記錄刪除恢復(fù)recall[范圍][for<條件>]鼠標(biāo)單擊去除刪除標(biāo)記(由黑變白)表菜單→恢復(fù)記錄物理刪除pack命令,物理刪除已打上刪除標(biāo)記的記錄表菜單→徹底刪除zap命令刪除表中所有數(shù)據(jù)(無論其是否有刪除標(biāo)記)5.4表中數(shù)據(jù)的編輯記錄數(shù)據(jù)的追加格式:insert

into表名([字段名列表])values([表達功能:在表尾追加新記錄,并輸入其數(shù)據(jù)。

格式:append

from<文件名>[fields<字段名表>][for<件>]

功能:將文件名中的數(shù)據(jù)進行投影或選擇操作后追加到當(dāng)表中。手動成批修改數(shù)據(jù)格式:edit|change[范圍][fields<字段名表>][for<條功能:修改指定范圍、滿足條件的記錄的指定字段的值自動成批修改數(shù)據(jù)

格式:replace<字段名1>with<表達式1>[,<字段名2>with<表達式2>……][范圍][for<條件>]功能:用表達式n的值替換字段名n的字段值5.5常見VFP文件操縱命令文件復(fù)制格式:Copy

File<源文件名>To<目標(biāo)文件名>功能:復(fù)制任何類型文件。說明:■■不能對已打開的文件進行復(fù)制操作。若復(fù)制的是表文件則其附屬備注文件須另行復(fù)制。copy

file

學(xué)生.dbf

to

xs.dbf

&&復(fù)制表文件copy

file

學(xué)生.fpt

to

xs.fpt

&&復(fù)制備注文件use

xs.dbf

&&打開表list5.5常見VFP文件操縱命令表結(jié)構(gòu)的復(fù)制格式:copy

structureto<文件名>[fields<字段表>]功能:復(fù)制當(dāng)前表的結(jié)構(gòu)到指定文件中說明:■■只復(fù)制結(jié)構(gòu),不復(fù)制數(shù)據(jù)若有fields子句,則新表中只包含指定的字段。use學(xué)生.dbflistcopy

structure

to

xsb

fields學(xué)號,姓名,生日

use

xsb.dbflist

structure5.5常見VFP文件操縱命令文件重命名格式:rename<原文件名>to<新文件名>

功能:給指定的文件重新命名。若為表改名,則備注文件名也要同步改動。rename學(xué)生.dbf

to學(xué)生2.dbfrename學(xué)生.fpt

to學(xué)生2.fpt刪除文件格式:erase|delete

file<文件名>功能:刪除指定的文件delete

file

xsb.dbferase學(xué)生2.dbf顯示文件目錄命令格式:dir&&file可以省略5.5常見VFP文件操縱命令表和其他類型文件中數(shù)據(jù)的轉(zhuǎn)換

格式:Copy

To

<文件名>

[<范圍>]

[

for<條件>]

[

while<條件>][Fields<字段名表>|LIKE<通配字段名>|EXCEPT<通配字段名>][[TYPE][SDF|XLS|DELIMITED[WITH<定界符>|BLANK|TAB]]]功能:表中數(shù)據(jù)復(fù)制到其他類型的文件中說明:■復(fù)制之后,當(dāng)前表仍是原表,不是新表。要使用新表,必須重新打開。且備注文件同時被復(fù)制?!觥鋈舨缓琓YPE子句,表示是從表復(fù)制到表。Type子句中:Sdf:表示復(fù)制到文本文件,數(shù)據(jù)無定界符,數(shù)據(jù)間也無分隔符Xls:表示復(fù)制到excel文件Delimited:復(fù)制到文本文件,但指定定界符和分隔符不帶with:表示逗號為分隔符,雙引號為定界符With<定界符>:表示逗號為分隔符,指定定界符With

blank:表示空格為分隔符,雙引號是定界符With

tab:表示制表符為分隔符,雙引號是定界符5.5常見VFP文件操縱命令其他類型文件中的數(shù)據(jù)傳入數(shù)據(jù)表格式:append

from<文件名>[<范圍>][for<條件>][while<條件>][Fields<字段名表>|LINK<通配字段名>|EXCEPT<通配字段名>][[TYPE][SDF|XLS|DELIMITED[WITH<定界符>|BLANK|TAB]]]功能:將其他類型文件中的數(shù)據(jù)插入當(dāng)前表中5.6排序格式:Sort

To<結(jié)果表文件名>On<字段名1>[/A][/c][/d];[,<字段名2>[/A][/c][/d]......][范圍][for<條件>][while<條件>][Fields<字段名表>功能:依據(jù)指定的關(guān)鍵字段對當(dāng)前表中記錄按指定順序重排列,結(jié)果存入指定的表文件中。說明:1、需排序的表應(yīng)打開并為當(dāng)前表。

2、排序?qū)a(chǎn)生一個新表,新表的記錄順序按指定順序排列而源表的記錄順序不變。即排序改變的是數(shù)據(jù)的物理順序。新表默認為關(guān)閉。3、ON<排序關(guān)鍵字>子句用以指定排序關(guān)鍵字。

4、[/A][/d]參數(shù)用以指定排序方式,前者表示升序(默認);后者表示降序。5、[/c]參數(shù)用以指定是否區(qū)分大小寫,缺省表示區(qū)分。

6、指定多個關(guān)鍵字段表示多重排序(先對第一個關(guān)鍵字按要求排序?qū)ζ渲型禂?shù)據(jù)再按第二個字段要求排序以此類推)5.7索引5.7.1排序與索引5.7.2索引的分類按功能分:

主索引——主索引不允許有重復(fù)值。一個表只能建立一個主索引,自由表沒有主索引。

候選索引——候選索引也不允許重復(fù)值。但一個表可以創(chuàng)建多個候選索引。普通索引——普通索引中,允許重復(fù)值出現(xiàn)。

惟一索引——有重復(fù)值記錄時,惟一索引只包含第一個。其它仍然在表中,但不在索引文件中。按擴展名分:

簡單索引文件:<文件名>.IDX。又稱單索引文件,它僅僅按單一個字段索引排序,只能按升序排序。

復(fù)合索引文件:<文件名>.CDX??砂鄠€索引,使用時選擇其中某一個字段索引排序,可以按升序排序,也可以按降序排序。5.7索引5.7.3索引的創(chuàng)建命令方式:創(chuàng)建單索引文件格式:

Index

On

<字段>

To

<簡單索引>

for

<條件>功能:按指定字段,建立簡單索引文件。擴展名為.IDXindex

on生日to

aa

&&按照生日字段建立單索引文件aaListindex

on

right(學(xué)號,2)to

aa

&&按照學(xué)號的后兩位進行排序創(chuàng)建結(jié)構(gòu)復(fù)合索引

格式:

Index

On

<索引字段>

Tag

<索引標(biāo)記名>

[ascending/descending]

[candidate|

unique]

功能:按指定字段,建立復(fù)合索引文件。復(fù)合索引文件與表文件同名,擴展名為.CDX說明:ascending表示升序,descending表示降序。

Candidate表示建立的是候選索引,unique表示建立的是唯一索引,否則表示普通索引。index

on生日tag

sr

descending5.7索引菜單方式:顯示→表設(shè)計器→選擇索引順序→索引選項卡→輸入索引名→選擇索引類型→輸入索引表達式→確定5.7索引思考題:如何用命令方式按照一年中學(xué)生過生日的先后順序建立索引?5.7索引5.7.4索引的使用使用索引必須先打開,一個表可以打開多個索引文件打開表時,結(jié)構(gòu)復(fù)合索引自動打開打開的索引不一定起作用,必須成為主控索引才起作用任何時刻,主控索引只有一個刪除索引時索引必須關(guān)閉表關(guān)閉,所有索引自動關(guān)閉5.7索引打開和關(guān)閉索引文件格式:set

index

to<索引文件表>[additive]

功能:打開當(dāng)前表的一個或多個索引文件,默認第一個索引文件為主控索引說明:加additive表示不關(guān)閉原來打開的那些索引文件,結(jié)構(gòu)復(fù)合索引除格式:set

index

to功能:關(guān)閉所有的索引文件,但結(jié)構(gòu)復(fù)合索引除外。確定主控索引菜單方式:打開表→瀏覽表→在“表”菜單中選擇“屬性”→在索引順序下拉框中選擇主控索引命令方式:set

order

to<索引序號>|<單索引文件名>|tag<索引標(biāo)5.7索引刪除索引單索引文件的刪除(同文件的刪除)結(jié)構(gòu)復(fù)合索引中索引標(biāo)記的刪除:命令:delete

tag<索引標(biāo)記1>[,<索引標(biāo)記

2>……]索引的更新當(dāng)表中數(shù)據(jù)發(fā)生變動時,若無主控索引,則需要用命令進行更新。格式:reindex5.7索引5.7.5索引查詢格式:seek<表達式>說明:此方法必須要求按關(guān)鍵字進行索引,在這里,<表達式>為關(guān)鍵字的某個值5.8數(shù)據(jù)統(tǒng)計命令

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論