Giáo trình Foxpro (lý thuyết)

Chia sẻ: Nhan Nguyen | Ngày: | Loại File: PDF | Số trang:25

0
297
lượt xem
176
download

Giáo trình Foxpro (lý thuyết)

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tạo tệp cơ sở dữ liệu

Chủ đề:
Lưu

Nội dung Text: Giáo trình Foxpro (lý thuyết)

  1. Bµi 1: T¹o tÖp CSDL 1. Khëi ®éng vµ tho¸t: a. Khëi ®éng: - Khëi ®éng: KÝch ®óp chuét vµo biÓu t-îng foxpro trªn mµn h×nh nÒn. - Foxpro cã hai chÕ ®é lµm viÖc lµ chÕ ®é héi tho¹i vµ chÕ ®é lËp tr×nh: + ChÕ ®é héi tho¹i: Lµ chÕ ®é th«ng dÞch, mçi khi ta ra lÖnh trong cöa sæ lÖnh (cöa sæ Command) th× Foxpro dÞch vµ thi hµnh lÖnh ngay lËp tøc. + ChÕ ®é lËp tr×nh: Lµ chÕ ®é biªn dÞch, c¸c c©u lÖnh cña Foxpro ®-îc viÕt trong mét tÖp gäi lµ tÖp ch-¬ng tr×nh cã phÇn më réng lµ *.prg. C¸c c©u lÖnh cã mèi quan hÖ víi nhau t¹o thµnh mét ch-¬ng tr×nh hoµn thiÖn. Khi thùc hiÖn ch-¬ng tr×nh, Foxpro sÏ lÇn l-ît dÞch vµ thi hµnh tÊt c¶ c¸c c©u lÖnh ®ã. b. Tho¸t: - C1: Tõ cöa sæ Command gâ lÖnh: Quit - C2: BÊm F10/ chän môc File/ Quit. 2. C¸c kiÓu d÷ liÖu c¬ b¶n vµ c¸c phÐp to¸n: a. KiÓu ký tù Character (C): - Bao gåm chuçi c¸c ký tù trong b¶ng m· chuÈn ASCII, cã ®é dµi tèi ®a lµ 254 ký tù. - C¸c phÐp to¸n: +, - b. KiÓu sè Numberic (N): - Chøa c¸c sè cã ®é dµi tèi ®a 20 ký tù, bao gåm c¶ dÊu chÊm ng¨n c¸ch phÇn thËp ph©n. - PhÐp to¸n: +, -, *, /, ^ c. KiÓu sè Float (F): - Chøa c¸c sè ®-îc biÓu diÔn theo d¹ng to¸n häc. - VÝ dô: Sè 1685.54 viÕt lµ 1.68554E+3 tøc lµ 1.68554*103. - PhÐp to¸n: +, -, *, /, ^ d. KiÓu Logic (L): - ChØ bao gåm hai gi¸ trÞ lµ TRUE (.T.) hoÆc FALSE (.F.) - PhÐp to¸n: AND, OR, NOT - B¶ng ch©n lý vÒ gi¸ trÞ c¸c phÐp to¸n:
  2. A B A and B A or B not A True True True True False True False False True False False True False True True False False False False True e. KiÓu ký øc Memo (M): - Chøa c¸c ®o¹n v¨n b¶n lín. f. KiÓu General (G): - Chøa c¸c lo¹i d÷ liÖu ®Æc biÖt nh- h×nh ¶nh, ©m thanh... 3. T¹o tÖp CSDL: a. Kh¸i niÖm vÒ CSDL trong Foxpro2.6: - CSDL lµ mét b¶ng gåm c¸c dßng vµ c¸c cét: + C¸c cét t¹o thµnh cÊu tróc CSDL gäi lµ c¸c tr-êng (Field), trªn mçi tr-êng x¸c ®Þnh duy nhÊt mét kiÓu d÷ liÖu. + C¸c dßng l-u tr÷ d÷ liÖu gäi lµ c¸c b¶n ghi (Record), mçi b¶n ghi l-u tr÷ mét hå s¬. b. LÖnh t¹o tÖp CSDL: - Có ph¸p: CREATE [] CREATE TABLE Tr-êng1 KiÓu(§é_réng)[, Tr-êng2 KiÓu(§é_réng)...] - Gi¶i thÝch: + Hai lÖnh trªn sÏ t¹o ra tÖp CSDL cã phÇn më réng lµ *.DBF. + NÕu dïng có ph¸p thø nhÊt th× sau khi ra lÖnh sÏ xuÊt hiÖn mµn h×nh thiÕt kÕ cÊu tróc CSDL bao gåm: * Field: Tªn tr-êng. Cã ®é dµi tèi ®a 10 ký tù chØ bao gåm c¸c ch÷ c¸i tõ A ®Õn Z, c¸c ch÷ sè vµ dÊu g¹ch nèi d-íi _ * Type: KiÓu d÷ liÖu cña tr-êng, ®Ó x¸c ®Þnh kiÓu ta chØ cÇn bÊm ch÷ c¸i ®Çu tiªn cña tªn kiÓu. * Width: §é réng cho phÐp cña tr-êng, tÝnh c¶ dÊu chÊm ng¨n c¸ch phÇn thËp ph©n nÕu lµ kiÓu sè. * Dec: Sè ch÷ sè sau phÇn thËp ph©n, chØ ¸p dông ®èi víi kiÓu sè.
  3. Khi thiÕt kÕ xong tÖp CSDL, ta bÊm Ctrl+W ®Ó ghi l¹i cÊu tróc vµ tho¸t khái mµn h×nh thiÕt kÕ. Foxpro sÏ hái: Input data records now? – cã nhËp d÷ liÖu cho c¸c b¶n ghi b©y giê kh«ng? NÕu chän Yes th× sÏ xuÊt hiÖn mµn h×nh nhËp d÷ liÖu liÖu cho tÖp võa t¹o. NhËp d÷ liÖu xong ta l¹i bÊm Ctrl+W ®Ó l-u l¹i d÷ liÖu vµ trá vÒ cöa sæ Command. TÖp sau khi t¹o xong sÏ ë tr¹ng th¸i më. + NÕu dïng có ph¸p th- hai th× sÏ kh«ng xuÊt hiÖn mµn h×nh thiÕt kÕ mµ Foxpro sÏ tù thiÕt kÕt tÖp CSDL theo cÊu tróc ®· chØ ®Þnh. 4. Më - ®ãng tÖp CSDL: - Khi muèn lµm viÖc víi bÊt kú tÖp CSDL nµo, ta ®Òu ph¶i ra lÖnh më tÖp ®ã. - Më tÖp CSDL: USE - §ãng tÖp CSDL: USE CLOSE DATABASE CLOSE ALL - Chó ý: T¹i mét thêi ®iÓm Foxpro chØ lµm viÖc ®-îc víi mét tÖp CSDL, khi më mét tÖp míi th× tÖp cò sÏ bÞ ®ãng. 5. Bæ sung c¸c b¶n ghi vµo tÖp CSDL: - Có ph¸p: APPEND [BLANK] - Gi¶i thÝch: + LÖnh trªn sÏ bæ sung c¸c b¶n ghi vµo cuèi tÖp CSDL ®ang më. + NÕu trong c©u lÖnh cã thµnh phÇn BLANK th× sÏ bæ sung mét b¶n ghi tr¾ng vµo tÖp CSDL. Khi ®ã sÏ kh«ng xuÊt hiÖn mµn h×nh nhËp d÷ liÖu. Bµi 2: NhËp vµ söa néi dung b¶n ghi 1. Con trá b¶n ghi vµ dÞch chuyÓn con trá b¶n ghi: + GO : ChuyÓn tíi b¶n ghi thø n. + GO TOP: ChuyÓn tíi b¶n ghi ®Çu tiªn. + GO BOTTOM: ChuyÓn tíi b¶n ghi cuèi cïng. + SKIP: DÞch chuyÓn theo chiÒu tiÕn mét b¶n ghi. + SKIP : DÞch chuyÓn n b¶n ghi. NÕu n>0: dÞch chuyÓn theo chiÒu tiÕn, nÕu n
  4. 2. Ph¹m vi thùc hiÖn lÖnh: - NhiÒu lÖnh cña Foxpro dïng kÌm víi nh- c¸c lÖnh Display, List, Browse... Ph¹m vi dïng ®Ó x¸c ®Þnh sè b¶n ghi mµ lÖnh t¸c ®éng ®Õn. - Cã bèn d¹ng ph¹m vi: + ALL: Lµm viÖc víi tÊt c¶ c¸c b¶n ghi. + RECORD : Lµm viÖc víi b¶n ghi thø . + NEXT : Lµm viÖc víi n b¶n ghi kªt tõ b¶n ghi hiÖn hµnh. + REST : Lµm viÖc víi c¸c b¶n ghi kÓ tõ b¶n ghi hiÖn hµnh tíi b¶n ghi cuèi cïng. 3. Bæ sung b¶n ghi cho tÖp CSDL: - Có ph¸p: APPEND [BLANK] APPEND FROM [FOR ] 4. ChÌn b¶n ghi vµo tÖp CSDL: - Có ph¸p: INSERT [BLANK] [BEFORE] INSERT FORM [FOR ] 5. Xem cÊu tróc tÖp CSDL: - Có ph¸p: LIST STRUCTURE DISPLAY STRUCTURE 6. Xem néi dung tÖp CSDL: - Có ph¸p: LIST [] [FIELDS ] [FOR ] [WHILE ] [OFF] [TO PRINTTO FILE ] 7. Xem, söa, thªm c¸c b¶n ghi: - Có ph¸p: BROWSE [FIELDS ] [FOR ] [TITLE ] [WIDTH ] [LPARTITION] [PARTITION ] [NOLINK] [LEDIT] [REDIT] [LOCK ]
  5. [FREEZE ] [NOEDITNOMODIFY] [NOAPPEND] [NODELETE] + §Ó bæ sung mét b¶n ghi vµo cuèi tÖp CSDL ta bÊm Ctrl+N. + §Ó ®¸nh dÊu xo¸ b¶n ghi ta bÊm Ctrl+T. + FILEDS : ChØ hiÓn thÞ nh÷ng tr-êng cã trong danh s¸ch. + FOR : ChØ lµm viÖc víi c¸c b¶n ghi tho¶ m·n . +TITLE : Dïng lµm tiªu ®Ò cña cöa sæ Browse thay cho tiªu ®Ò ngÇm ®Þnh lµ tªn tÖp CSDL. + WIDTH : PhÇn nµy quy ®Þnh chiÒu réng tèi ®a ®Ó hiÓn thÞ mét tr-êng trªn mµn h×nh lµ . NÕu kh«ng cã thµnh phÇn nµy th× ®é réng dµnh cho c¸c tr-êng chÝnh lµ ®é réng cña kiÓu d÷ liÖu cña tr-êng ®ã. VÝ dô WIDTH 10 th× trong cöa sæ tr×nh duyÖt sÏ dµnh cho c¸c tr-êng tèi ®a lµ 10 ký tù. + PARTITION : Theo mÆc ®Þnh cöa sæ Browse chiÕm toµn mµn h×nh (phãng to thu nhá cöa sæ b»ng c¸ch bÊm Ctrl+F10). Tõ kho¸ trªn sÏ ph©n mµn h×nh thµnh 2 phÇn theo chiÒu däc. PhÇn bªn tr¸i gåm cét, phÇn bªn ph¶i lµ sè cét cßn l¹i cña mµn h×nh (mµn h×nh cã 80 cét vµ 24 dßng). B×nh th-êng con trá sÏ n»m ë phÇn bªn ph¶i. Di chuyÓn con trá (vÖt s¸ng) gi÷a hai phÇn b»ng c¸ch bÊm Ctrl+H. Theo ngÇm ®Þnh, khi vÖt s¸ng ë mét phÇn di chuyÓn th× vÖt s¸ng ë phÇn kia còng di chuyÓn theo. Ta cã thÓ bá chÕ ®é liªn kÕt nµy b»ng tõ kho¸ NOLINK (hoÆc bÊm Ctrl+B råi chän Unlink Partition). + LPARTITION: Tõ kho¸ nµy quy ®Þnh con trá mµn h×nh ë khu vùc tr¸i ngay sau khi khëi ®éng lÖnh Browse víi tõ kho¸ PARTITION. + LEDIT vµ REDIT: Khi dïng PARTITION, trong c¶ hai phÇn cña cöa sæ BROWSE ®Òu hiÖn theo d¹ng Browse (d¹ng hµng ngang), ta cã thÓ cho hiÖn theo d¹ng Change (d¹ng hµng däc). NÕu muèn phÇn bªn tr¸i hiÖn d¹ng Change th× dïng tõ kho¸ LEDIT, nÕu muèn phÇn bªn ph¶i hiÖn d¹ng Change th× dïng tõ kho¸ REDIT (hoÆc bÊm Ctrl+B råi chän Change). + LOCK : Tõ kho¸ nµy dïng ®Ó cè ®Þnh tr-êng liªn tôc bªn tr¸i, chóng sÏ kh«ng bÞ tr«i khi cuén mµn h×nh theo chiÒu ngang. NÕu muèn cè ®Þnh c¸c tr-êng kh«ng liªn tôc th× ph¶i ®i kÌm víi FIELDS . + FREEZE : ChØ cho phÐp söa ®æi vµ di chuyÓn trong mét tr-êng ®· chØ ®Þnh. + NOEDIT hay NOMODIFY: Kh«ng cho phÐp chØnh söa d÷ liÖu. + NOAPPEND: Kh«ng cho phÐp bæ sung b¶n ghi vµo CSDL (b»ng c¸ch bÊm Ctrl+N). + NODELETE: Kh«ng cho phÐp ®¸nh dÊu xo¸ c¸c b¶n ghi (b»ng c¸ch bÊm Ctrl+T) Bµi 3: Qu¶n lý cÊu tróc tÖp vµ b¶n ghi
  6. 1. Söa cÊu tróc tÖp CSDL: - Có ph¸p: Modify Structure + LÖnh trªn dïng ®Ó söa cÊu tróc tÖp CSDL ®ang ®-îc më. + Khi dïng lÖnh nµy, cöa sæ thiÕt kÕt cÊu tróc CSDL ®-îc më, ta cã thÓ thªm tr-êng, thay ®æi tªn, thay ®æi kiÓu d÷ liÖu cña c¸c tr-êng. + NÕu tÖp CSDL cã c¸c tr-êng Memo th× tÖp cò l-u tr-êng Memo lµ *.FPT sÏ ®æi thµnh *.TBK. + Khi söa xong bÊm Ctrl+W ®Ó ghi l¹i (m¸y sÏ hái “Make structure changes permanent” ta chän YES) hoÆc bÊm ESC ®Ó huû bá viÖc söa ®æi. - Chó ý: + NÕu kiÓu d÷ liÖu cña mét tr-êng sau khi ta thay ®æi mµ phï hîp víi d÷ liÖu cña tÖp cò th× d÷ liÖu cña tÖp cò chuyÓn sang tÖp míi. NÕu kh«ng phï hîp sÏ bÞ xo¸ bá (VÝ dô: KiÓu Number söa thµnh kiÒu Character lµ phï hîp nh-ng kiÓu Character ®æi thµnh kiÓu Number sÏ kh«ng phï hîp). + NÕu ta thay ®æi tªn tr-êng vµ kiÓu tr-êng hoÆc tªn tr-êng vµ ®é réng cña tr-êng th× Foxpro coi ®©y lµ mét tr-êng míi vµ sÏ huû bá hÕt d÷ liÖu cña tr-êng nµy. Trong tr-êng hîp nµy ta ph¶i tiÕn hµnh hai lÇn söa cÊu tróc: lÇn thø nhÊt söa mäi thay ®æi cña tr-êng nh-ng kh«ng söa tªn tr-êng råi ghi l¹i, lÇn thø hai chØ söa tªn tr-êng. + V× viÖc söa ®æi cÊu tróc tÖp dÔ gÆp rñi ro nªn tr-íc khi söa ®æi ta nªn sao l¹i mét b¶n ®Ó l-u tr÷, nÕu cã g× trôc trÆc ta vÉn cßn b¶n cò. 2. Sao chÐp cÊu tróc tÖp CSDL: - Có ph¸p: COPY STRUCTURE TO [FIELDS ] + LÖnh nµy sao chÐp cÊu tróc tÖp CSDL ®ang më sang mét tÖp míi lµ + TÖp míi t¹o thµnh chØ cã cÊu tróc, ch-a cã néi dung b¶n ghi. + NÕu cã thµnh phÇn FIELDS th× chØ nh÷ng tr-êng n»m trong danh s¸ch míi ®-îc sao chÐp, tøc lµ tÖp míi t¹o thµnh chØ bao gåm c¸c tr-êng cã trong danh s¸ch. 3. Sao l-u cÊu tróc: - Có ph¸p: COPY STRUCTURE EXTENDED TO [FIELDS ] + LÖnh nµy sÏ sao chÐp cÊu tróc cña tÖp CSDL ®ang më thµnh c¸c b¶n ghi cña . TÖp CSDL míi t¹o thµnh nµy cã bèn tr-êng cè ®Þnh: * FIELD_NAME C(10): Ghi tªn c¸c tr-êng cña tÖp CSDL cÇn l-u.
  7. * FIELD_TYPE C(1): Ghi kiÓu cña tr-êng. * FIELD_LEN N(3,0): Ghi ®é réng cña tr-êng. * FILED_DEC N(3,0): Ghi sè ch÷ sè sau phÇn thËp ph©n cña tr-êng sè. + NÕu cã thµnh phÇn FIELDS th× chØ nh÷ng tr-êng n»m trong danh s¸ch cña tÖp CSDL ®ang më míi ®-îc sao. - Chó ý: Sau khi l-u cÊu tróc cña tÖp ®ang më sang , ta cã thÓ t¹o mét tÖp CSDL míi cã cÊu tróc t-¬ng øng víi c¸c b¶n ghi cña b»ng lÖnh: CREATE FROM 4. Sao chÐp cÊu tróc vµ b¶n ghi: - Có ph¸p: COPY TO [FIELDS ] [] [FOR ] [WHILE ] + LÖnh trªn sÏ sao chÐp cÊu tróc cïng b¶n ghi cña tÖp CSDL ®ang më sang tÖp CSDL míi lµ . + NÕu cã thµnh phÇn FIELDS th× chØ nh÷ng tr-êng n»m trong danh s¸ch míi ®-îc sao chÐp. + NÕu cã th× chØ nh÷ng b¶n ghi n»m trong míi ®-îc sao chÐp. + NÕu cã FOR th× chØ nh÷ng b¶n ghi tho¶ m·n míi ®-îc sao chÐp. + NÕu cã WHILE th× c«ng viÖc sao chÐp chØ diÔn ra chõng nµo cßn ®óng. Khi nhËn gi¸ trÞ sai th× viÖc sao chÐp sÏ dõng. 5. Xo¸ b¶n ghi: a. §¸nh dÊu xo¸ b¶n ghi: - §Ó xo¸ b¶n ghi khái tÖp CSDL tr-íc hÕt ta ph¶i ®¸nh dÊu xo¸ b¶n ghi ®ã. - Có ph¸p: DELETE [] [FOR ] [WHILE ] + LÖnh trªn sÏ ®¸nh dÊu xo¸ c¸c b¶n ghi. NÕu kh«ng cã c¸c thµnh phÇn tïy chän th× sÏ ®¸nh dÊu xo¸ tÊt c¶ c¸c b¶n ghi. + NÕu cã th× chØ ®¸nh dÊu xo¸ nh÷ng b¶n ghi n»m trong . + NÕu cã FOR th× chØ ®¸nh dÊu xo¸ nh÷ng b¶n ghi tho¶ m·n . + NÕu cã WHILE th× sÏ ®¸nh dÊu xo¸ nh÷ng b¶n ghi ®Õn khi nhËn gi¸ trÞ sai. b. Kh«i phôc ®¸nh dÊu xo¸: - Có ph¸p:
  8. RECALL [] [FOR ] [WHILE ] + LÖnh trªn sÏ kh«i phôc l¹i c¸c b¶n ghi ®· bÞ ®¸nh dÊu xo¸. + NÕu cã FOR th× chØ kh«i phôc c¸c b¶n ghi tho¶ m·n . + NÕu cã WHILE th× viÖc kh«i phôc chØ x¶y ra chõng nµo cßn ®óng. c. Xo¸ b¶n ghi khái tÖp CSDL: - Có ph¸p: PACK + LÖnh trªn sÏ xo¸ tÊt c¶ c¸c b¶n ghi ®· bÞ ®¸nh dÊu xo¸. d. Xo¸ tÊt c¶ c¸c b¶n ghi khái tÖp CSDL: - Có ph¸p: ZAP + LÖnh trªn sÏ xo¸ tÊt c¶ c¸c b¶n ghi cña tÖp CSDL hiÖn hµnh mµ kh«ng cÇn ®¸nh dÊu xo¸, t-¬ng ®-¬ng víi c¸c c©u lÖnh: Delete All Pack e. C¸c lÖnh vµ c¸c hµm liªn quan: - LÖnh SET DELETE ON/OFF: §Æt chÕ ®é xö lý c¸c b¶n ghi bÞ ®¸nh dÊu xo¸. Ta cã thÓ t¹m thêi che c¸c b¶n ghi bÞ ®¸nh dÊu xo¸ b»ng lÖnh SET DELETE ON, khi ®ã c¸c b¶n ghi ®· bÞ ®¸nh dÊu xo¸ sÏ t¹m thêi bÞ che ®i coi nh- kh«ng tån t¹i. NÕu ta dïng c¸c lÖnh DISPLAY, LIST th× c¸c b¶n ghi ®ã sÏ kh«ng ®-îc hiÖn lªn. - Hµm Delete(): Tr¶ vÒ kÕt qu¶ gi¸ trÞ Logic, cho biÕn b¶n ghi hiÖn hµnh cã bÞ ®¸nh dÊu xo¸ (TRUE) hay kh«ng (FALSE). Bµi 4: Qu¶n lý c¸c tÖp 1. LÖnh DIR: - Có ph¸p: DIR + LÖnh trªn dïng ®Ó liÖt kª c¸c tÖp CSDL trong th- môc hiÖn hµnh. + Trong cã thÓ dïng c¸c ký tù ®¹i diÖn: * DÊu * ®¹i diÖn cho mét nhãm ký tù. * DÊu ? ®¹i diÖn cho mét ký tù. + NÕu chØ dïng lÖnh DIR th× Foxpro liÖt kª tÊt c¶ c¸c tÖp CSDL trong th- môc hiÖn hµnh. 2. LÖnh DISPLAY FILES: - Có ph¸p:
  9. DISPLAY FILES [ON ] [LIKE ] [TO PRINTER] + LÖnh trªn cho hiÓn thÞ c¸c tÖp. + NÕu cã ON th× sÏ hiÓn thÞ c¸c tÖp ë th- môc chØ ra trong . + NÕu cã LIKE th× sÏ hiÓn thÞ c¸c tÖp theo nhãm chØ ®Þnh. + Muèn in kÕt qu¶ ra m¸y in, ta thªm thµnh phÇn TO PRINTER. 3. LÖnh DELETE: - Có ph¸p: DELETE FILE ERASE + Hai lÖnh trªn cã t¸c dông xo¸ khái ®Üa. + Cã thÓ dïng c¸c ký tù ®¹i diÖn nh- dÊu * ? 4. LÖnh COPY FILE: - Có ph¸p: COPY FILE TO + LÖnh trªn sÏ sao chÐp thµnh mét tÖp n÷a cã tªn lµ . + ph¶i ë tr¹ng th¸i ®ãng. 5. LÖnh RENAME: - Có ph¸p: RENAME TO + LÖnh trªn sÏ ®æi tªn cña tÖp cã tªn lµ thµnh . + TÖp cÇn ®æi tªn ph¶i ë tr¹ng th¸i ®ãng. 6. LÖnh TYPE: - Có ph¸p: TYPE [TO PRINTERTO FILE ] + LÖnh trªn dïng ®Ó xem néi dung cña tÖp v¨n b¶n nh- c¸c tÖp *.txt, *.prg, *.pas + NÕu cã TO PRINTER th× néi dung tÖp sÏ ®-îc ®-a ra m¸y in. + NÕu cã TO FILE th× néi dung cña sÏ ®-îc sao chÐp sang tÖp míi lµ . 7. LÖnh RUN: - Có ph¸p:
  10. RUN ! + Hai lÖnh trªn dïng ®Ó thùc hiÖn mét lÖnh bÊt kú cña MS-DOS. 8. LÖnh SET DEFAULT TO: - Có ph¸p: SET DEFAULT TO + LÖnh trªn ®Æt th- môc lµm viÖc míi ®-îc chØ ra trong 9. C¸c hµm lµm viÖc víi CSDL: BOF(): Cho gi¸ trÞ .T. nÕu ta ra lÖnh chuyÓn con trá b¶n ghi lªn trªn b¶n ghi ®Çu tiªn. EOF(): Cho gi¸ trÞ .T. nÕu con trá b¶n ghi ®· ®Æt ë cuèi tÖp (b¶n ghi cuèi cïng cña tÖp ch- ph¶i lµ cuèi tÖp, b¶n ghi ë cuèi tÖp dïng ®Ó l-u th«ng tin vÓ tæng sè b¶n ghi cña tÖp). RECNO(): Cho sè thø tù cña b¶n ghi hiÖn hµnh. NÕu con trá ®· ë cuèi tÖp th× hµm sÏ cho tæng sè b¶n ghi céng 1. RECCOUNT(): Cho tæng sè b¶n ghi cña tÖp CSDL. FCOUNT(): Cho sè tr-êng cña tÖp CSDL ®ang më. FIELD(n): Cho biÕt tªn cña tr-êng thø n (d-íi d¹ng ch÷ hoa) trong tÖp CSDL ®ang më. FSIZE(‘Tªn_tr-êng’): Cho ®é réng cña ‘Tªn_tr-êng’ trong tÖp CSDL. DBF(): Cho biÕt tªn cïng c¶ ®-êng dÉn cña tÖp CSDL ®ang më. FILE(‘§-êng_dÉn\Tªn_tÖp’): Cho gi¸ trÞ .T. nÕu ‘Tªn_tÖp’ ®-îc chØ ra ®· cã trªn ®Üa. Bµi 5: T×m kiÕm tuÇn tù - S¾p xÕp vËt lý trªn CSDL 1. T×m kiÕm tuÇn tù: - Có ph¸p: LOCATE FOR [] + LÖnh trªn sÏ t×m kiÕm c¸c b¶n ghi trªn toµn tÖp tho¶ m·n b¾t ®Çu tõ b¶n ghi ®Çu tiªn. + NÕu t×m thÊy, hµm Found() cho gi¸ trÞ .T. hµm Recno() cho biÕt sè hiÖu b¶n ghi cña b¶n ghi võa t×m ®-îc, Foxpro sÏ ®Þnh vÞ con trá vµo b¶n ghi t×m ®-îc. + NÕu kh«ng t×m thÊy, hµm Found() chi gi¸ trÞ .F. hµm Eof() cho gi¸ trÞ .T. tøc lµ con trá b¶n ghi ®· ë cuèi tÖp. + Trong tr-êng hîp t×m thÊy, ®Ó t×m tiÕp ta thùc hiÖn lÖnh: CONTINUE
  11. Cho tíi khi mµn h×nh th«ng b¸o “End of Locate Scope”, lóc nµy hµm Eof() cã gi¸ trÞ .T. hµm Found() cã gi¸ trÞ .F. 2. S¾p xÕp vËt lý trªn CSDL: - Tr-íc khi s¾p xÕp d÷ liÖu, ph¶i x¸c ®Þnh s¾p xÕp theo tr-êng nµo, theo thø tù t¨ng dÇn hay gi¶m dÇn, tr-êng nµo -u tiªn s¾p xÕp tr-íc, cã ph©n biÖt ch÷ hoa hay ch÷ th-êng kh«ng. - C¸c chØ tiªu ph©n lo¹i trong khi s¾p xÕp: /A (viÕt t¾t cña Ascending): s¾p xÕp theo thø tù t¨ng dÇn. /D (viÕt t¾t cña Descending): s¾p xÕp theo thø tù gi¶m dÇn. /C: kh«ng ph©n biÖt ch÷ hoa hay ch÷ th-êng. Theo ngÇm ®Þnh, Foxpro s¾p xÕp theo chiÒu t¨ng dÇn vµ cã ph©n biÖt ch÷ hoa hay ch÷ th-êng. - Có ph¸p: SORT TO ON [/A/D][/C] [, [/A/D][/C]...] [] [FOR ][WHILE ] [FIELDS ] - Gi¶i thÝch: + LÖnh SORT s¾p xÕp c¸c b¶n ghi cña tÖp ®ang më theo c¸c tr-êng ®-îc chØ ®Þnh sau ON vµ ghi ra tÖp , c¸c tr-êng ë ®Çu -u tiªn xÕp tr-íc. + NÕu cã th× chØ nh÷ng b¶n ghi n»m trong míi ®-îc s¾p xÕp sang . NÕu kh«ng cã th× s¾p xÕp tÊt c¶ c¸c b¶n ghi. + NÕu cã FIELDS th× chØ nh÷ng tr-êng n»m trong danh s¸ch míi ®-îc s¾p xÕp sang . + Thµnh phÇn FOR dïng ®Ó giíi h¹n c¸c b¶n ghi, chØ nh÷ng b¶n ghi tho¶ m·n míi ®-îc s¾p xÕp sang . + NÕu cã thµnh phÇn WHILE th× c«ng viÖc s¾p xÕp ®-îc tiÕn hµnh chõng nµo cßn ®óng. 3. LÖnh thay thÕ tr-êng: - Có ph¸p: REPLACE WIDTH [, WIDTH ...] [] [FOR ] [WHILE ] - Gi¶i thÝch: + LÖnh trªn thay thÕ bëi , bëi ... cña c¸c b¶n ghi thuéc . NÕu kh«ng cã
  12. + NÕu cã FOR th× chØ thay thÕ c¸c b¶n ghi trong vµ tho¶ m·n . + NÕu cã WHILE th× c«ng viÖc thay thÕ c¸c b¶n ghi trªn tr-êng ®-îc chØ ®Þnh diÔn ra chõng nµo cßn ®óng. Bµi 6: S¾p xÕp theo tÖp chØ sè 1. Kh¸i niÖm: - Khi nhËp d÷ liÖu b»ng c¸c lÖnh Append, Browse, c¸c b¶n ghi míi ®-îc nèi vµo cuèi tÖp vµ ®-îc s¾p xÕp cè ®Þnh theo mét thø tù vËt lý, ®-îc ®Æc tr-ng bëi sè hiÖu b¶n ghi. C¸c b¶n ghi khi ®· l-u vµo tÖp th× kh«ng thÓ lµm ®¶o lén chóng, v× thÕ muèn s¾p xÕp chóng ta ph¶i sao chÐp chóng sang mét tÖp kh¸c theo mét trËt tù míi b»ng lÖnh SORT. - Khi s¾p xÕp vËt lý b»ng lÖnh SORT cã nhiÒu nh-îc ®iÓm nh-: Qu¸ tr×nh s¾p xÕp diÔn ra rÊt l©u nÕu sè l-îng b¶n ghi lín, khi bæ sung thªm b¶n ghi míi th× trËt tù s¾p xÕp cã thÓ kh«ng cßn ®óng n÷a v× b¶n ghi míi bæ sung lu«n n»m cuèi tÖp. - Foxpro cho phÐp s¾p xÕp theo Logic b»ng c¸ch t¹o mét tÖp trung gian cã kÝch th-íc rÊt nhá gäi lµ tÖp chØ sè. øng víi mçi tÖp CSDl ta cã thÓ t¹o nhiÒu tÖp chØ sè t-¬ng øng víi nhiÒu -u tiªn s¾p xÕp kh¸c nhau. ViÖc chuyÓn tõ thø tù -u tiªn nµy sang thø tù -u tiªn kh¸c rÊt thuËn tiÖn. - TÖp chØ sè ®-îc t¹o ra chØ gåm c¸c tr-êng -u tiªn s¾p xÕp vµ mét tr-êng chøa sè hiÖu b¶n ghi nªn tÖp cã dung l-îng rÊt nhá, tÖp chØ sè cã quan hÖ t-¬ng øng víi tÖp CSDL nhê sè hiÖu b¶n ghi. - Víi tÖp chØ sè ta cã thÓ t×m kiÕm dÔ dµng vµ nhanh h¬n t×m kiÕm tuÇn tù trªn tÖp CSDL. Khi thù hiÖn mét lÖnh t×m kiÕm, tr-íc hÕt Foxpro sÏ dß t×m trªn tÖp chØ sè, nÕu t×m thÊy b¶n ghi tho¶ m·n ®iÒu kiÖn t×m kiÕm th× sÏ chiÕu sang tÖp CSDl ®Ó lÊy d÷ liÖu ®Çy ®ñ cña b¶n ghi ®ã th«ng qua sè hiÖu b¶n ghi. VÝ dô: gi¶ sö tÖp hsns.dbf gåm c¸c b¶n ghi: Record # HODEM TEN KHOA 1 Nguyen Van Thanh Kinh te 2 Le Thi Linh Ke toan 3 Le Van Xuan Marketing 4 Tran Van Hanh Du lich NÕu s¾p xÕp theo thø tù ABC cña tr-êng TEN th× tÖp chØ sè sÏ gåm hai cét: Gi¸ trÞ khãa Recno Hanh 4 Linh 2
  13. Thanh 1 Xuan 3 B©y giê cÇn t×m kiÕm mét ng-êi tªn lµ “Linh”, m¸y sÏ dß t×m ë cét thø nhÊt cña tÖp chØ sè ®Õn ng-êi tªn lµ “Linh”, viÖc dß t×m trªn tÖp ®· ®-îc s¾p xÕp sÏ nhanh h¬n nhiÒu so víi tÖp ch-a ®-îc s¾p xÕp. Sau ®ã dãng hµng ngang sang cét thø hai ®-îc sè hiÖu b¶n ghi lµ 3 cã nghÜa th«ng tin vÒ ng-êi cÇn t×m n»m trong b¶n ghi sè 3 trong tÖp CSDL gèc. Nh- vËy Foxpro sÏ chiÕu sang b¶n ghi thø 3 cña tÖp CSDL gèc ®Ó lÊy th«ng tin. - Theo c¸ch thøc ho¹t ®éng cña tÖp chØ sè cã thÓ chia tÖp chØ sè thµnh ba lo¹i: TÖp chØ sè chuÈn IDX (Index file), tÖp chØ sè kÕt hîp CDX ®éc lËp (Independent Conmpound Index file) vµ tÖp chØ sè kÕt hîp CDX kh«ng ®éc lËp (Structural Compound Index file). 2. TÖp chØ sè chuÈn: a. T¹o tÖp chØ sè chuÈn: - Có ph¸p: INDEX ON TO [FOR ] [COMPACT] [UNIQUE] [ADDITIVE] - Gi¶i thÝch: + cã thÓ lµ tªn tr-êng, biÓu thøc mµ cã biÕn tr-êng tham gia. ViÖc s¾p xÕp lu«n theo thø tù t¨ng dÇn, kh«ng cho phÐp s¾p xÕp theo thø tù gi¶m dÇn. + TO sÏ chØ thÞ viÖc t¹o tÖp chØ sè cã tªn lµ . T¹o xong, tÖp chØ sè ®-îc më vµ con trá b¶n ghi n»m ë b¶n ghi cã chØ sè kho¸ thÊp nhÊt. + NÕu FOR th× chØ nh÷ng b¶n ghi tho¶ m·n míi ®-îc s¾p xÕp. + Tõ kho¸ COMPACT sÏ gióp cho viÖc t¹o chØ sè nhanh h¬n. + NÕu cã UNIQUE th× Foxpro chØ lÊy mét b¶n ghi ®Çu tiªn trong nh÷ng b¶n ghi trïng kho¸ s¾p xÕp ®Ó ®-a ra tÖp chØ sè. + NÕu cã thªm tõ kho¸ ADDITIVE th× tÖp chØ sè míi t¹o sÏ lµ tÖp chØ sè chñ vµ kh«ng ®ãng c¸c tÖp chØ sè ®ang më (TÖp CSDL sÏ s¾p xÕp theo cña tÖp chØ sè chñ). b. Më tÖp chØ sè chuÈn: - Trong bé nhí m¸y tÝnh cã thÓ cã nhiÒu tÖp chØ sè IDX cïng hoÆt ®éng g¾n liÒn víi CSDL (tøc lµ cã nhiÒu c¸ch s¾p xÕp cïng ho¹t ®éng). Nh-ng trong sè ®ã chØ cã mét tÖp chØ sè chñ (Master Index File), khi hiÓn thÞ c¸c b¶n ghi ta thÊy c¸c b¶n ghi ®-îc s¾p xÕp theo tÖp chØ sè chñ. - Cã hai c¸ch më tÖp chØ sè lµ: më CSDL råi më tÖp chØ sè hoÆc më c¸c tÖp chØ sè ®ång thêi víi CSDL. - C¸ch 1: SET INDEX TO
  14. [ORDER ] [ASCENDINGDESCENDING] [ADDITIVE] - Gi¶i thÝch: + : C¸c tÖp chØ sè trong danh s¸ch sÏ ®-îc më, tÖp chØ sè ®Çu tiªn (theo ngÇm ®Þnh) sÏ lµ tÖp chØ sè chñ. + NÕu cã [ORDER ] th× tÖp chØ sè cã thø tù lµ trong sÏ lµ tÖp chØ sè chñ. NÕu dïng order 0 th× c¸c tÖp chØ sè ®-îc më nh-ng kh«ng cã tÖp chØ sè chñ. Cã thÓ ®Æt tÖp chØ sè chñ b»ng c¸c gäi trùc tiÕp tªn . + ASCENDINGDESCENDING: Dïng kÌm víi ORDER ®Ó quy ®Þnh l¹i chiÒu t¨ng (ASCENDING) hay gi¶m (DESCENDING) dÇn cña kho¸ s¾p xÕp. C¸c tõ kho¸ nµy chØ cã t¸c dông khi xuÊt d÷ liÖu (vÝ dô lÖnh LIST), song thø tù s¾p xÕp cña tÖp chØ sè vÉn kh«ng thay ®æi (vÉn theo thø tù t¨ng dÇn). + NÕu cã ADDITIVE th× më c¸c tÖp chØ sè míi nh-ng kh«ng ®ãng c¸c tÖp chØ sè ®· më tõ tr-íc. - C¸ch 2: USE INDEX [ORDER ] [ASCENDINGDESCENDING] C¸c tõ kho¸ dïng gièng nh- c¸ch 1. c. §æi tÖp chØ sè chñ: - Trong khi lµm viÖc ta cã thÓ ®æi ®Ýnh môc chñ ®Ó s¾p xÕp l¹i trËt tù cña c¸c b¶n ghi theo ý muèn. - Có ph¸p: SET ORDER TO  [ASCENDINGDESCENDING] - Gi¶i thÝch: + Khi dïng lÖnh nµy th× tÖp chØ sè cã thø tù lµ trong danh s¸ch c¸c tÖp chØ sè IDX ®ang më sÏ lµm chØ sè chñ. Cã thÓ chØ ®Ých danh tÖp chØ sè chñ lµ . + C¸c tõ kho¸ [ASCENDINGDESCENDING] quy ®Þnh chiÒu t¨ng hay gi¶m cña kho¸ s¾p xÕp khi xuÊt d÷ liÖu, song thø tù s¾p xÕp cña tÖp chØ sè kh«ng thay ®æi. - Khi tr¶ l¹i thø tù vËt lý ban ®Çu cña tÖp CSDL mµ kh«ng cÇn ®ãng bÊt kú tÖp chØ sè nµo ta dïng lÖnh: SET ORDER TO 0 d. §ãng tÖp chØ sè:
  15. - C¸c có ph¸p: SET INDEX TO: §ãng tÊt c¶ c¸c tÖp chØ sè ®ang më. CLOSE INDEX: §ãng c¸c tÖp chØ sè. CLOSE ALL: §ãng tÊt c¶ c¸c lo¹i tÖp (c¶ tÖp CSDL vµ tÖp chØ sè). - Khi ®ãng mét tÖp CSDL th× tÖp chØ sè liªn quan tíi tÖp CSDL ®ã còng bÞ ®ãng theo. 3. TÖp chØ sè kÕt hîp ®éc lËp: a. T¹o tÖp chØ sè kÕt hîp ®éc lËp: - Có ph¸p: INDEX ON TAG OF [FOR
  16. USE INDEX [ORDER ] [ASCENDINGDESCENDING] C¸c tõ kho¸ dïng gièng nh- c¸ch 1. c. §æi ®Ýnh môc chñ: - Có ph¸p: SET ORDER TO  [ASCENDINGDESCENDING] - Gi¶i thÝch: + LÖnh trªn sÏ thay ®æi ®Ýnh môc chñ lµ ®Ýnh môc cã thø tù lµ trong tÖp CDX hoÆc cã thÓ chØ ®Ých danh . d. §ãng tÖp chØ sè: - C¸c có ph¸p: SET INDEX TO: §ãng tÊt c¶ c¸c tÖp chØ sè ®ang më. CLOSE INDEX: §ãng c¸c tÖp chØ sè. CLOSE ALL: §ãng tÊt c¶ c¸c lo¹i tÖp (c¶ tÖp CSDL vµ tÖp chØ sè). - Khi ®ãng mét tÖp CSDL th× tÖp chØ sè liªn quan tíi tÖp CSDL ®ã còng bÞ ®ãng theo. e. Xo¸ mét ®Ýnh môc khái tÖp chØ sè: - Có ph¸p: DELETE TAG [OF ] DELETE TAG ALL [OF ] - Gi¶i thÝch: + LÖnh thø nhÊt xo¸ ®Ýnh môc cã tªn lµ khái tÖp CDX. + LÖnh thø hai xo¸ tÊt c¶ c¸c ®Ýnh môc ®ång thêi xo¸ c¶ tÖp CDX. + NÕu cã tõ kho¸ OF sÏ xo¸ c¸c ®Ýnh môc cña tÖp ®-îc chØ ®Þnh, nÕu kh«ng sÏ xo¸ c¸c ®Ýnh môc cña tÖp chØ sè ®ang më. 4. C¸c hµm vµ c¸c lÖnh liªn quan ®Õn tÖp chØ sè: - LÖnh xem tÖp chØ sè chñ: DISPLAY STATUS LÖnh nµy dïng ®Ó xem t×nh tr¹ng cña tÖp CSD: Tªn tÖp CSDL, c¸c tÖp chØ sè ®ang më vµ kho¸ s¾p xÕp, tÖp chØ sè chñ.
  17. - Hµm NDX(n): Cho biÕt tªn tÖp chØ sè IDX cã sè thø tù lµ n trong danh s¸ch c¸c tÖp chØ sè ®-îc më. - Hµm KEY(n): Tr¶ l¹i biÓu thøc kho¸ cña tÖp IDX cã sè thø tù lµ n. - Hµm ORDER(): Cho tªn tÖp chØ sè chñ cña tÖp CSDL ®ang më. - Hµm SYS(21): Tr¶ l¹i sè thø tù cña tÖp chØ sè chñ. Bµi 7: S¾p xÕp theo tÖp chØ sè (tiÕp) 1. TÖp chØ sè kÕt hîp kh«ng ®éc lËp: a. T¹o tÖp chØ sè kÕt hîp kh«ng ®éc lËp: - Có ph¸p: INDEX ON TAG [FOR ][ASCENDINGDESCENDING] [UNIQUE] - Gi¶i thÝch: + LÖnh trªn sÏ t¹o tÖp chØ sè míi cã tªn trïng víi tªn cña tÖp CSDL. + C¸c tõ kho¸ dïng t-¬ng tù nh- lÖnh t¹o tÖp chØ sè kÕt hîp ®éc lËp. b. Më tÖp chØ sè kÕt hîp kh«ng ®éc lËp: - Khi më tÖp CSDL th× tÖp chØ sè kÕt hîp kh«ng ®éc lËp sÏ tù ®éng ®-îc më, nh-ng kh«ng cã ®Ýnh môc chñ. - Muèn cã ®Ýnh môc chñ ngay khi më ta dïng lÖnh: USE ORDER  c. §æi ®Ýnh môc chñ: - Dïng lÖnh gièng nh- víi tÖp chØ sè kÕt hîp ®éc lËp. d. §ãng tÖp chØ sè kÕt hîp kh«ng ®éc lËp: - LÖnh Set Index To vµ Close Index kh«ng ®ãng ®-îc tÖp chØ sè lo¹i nµy, mµ nã chØ lµm cho kh«ng cã ®Ýnh môc nµo lµ ®Ýnh môc chñ. - Muèn ®ãng tÖp chØ sè kÕt hîp kh«ng ®éc lËp chØ cã c¸ch lµ ®ãng tÖp CSDL. e. Xo¸ mét ®Ýnh môc khái tÖp chØ sè: - Có ph¸p: DELETE TAG DELETE TAG ALL - Gi¶i thÝch: + LÖnh thø nhÊt xo¸ ®Ýnh môc trong tÖp chØ sè ®ang më.
  18. + LÖnh thø hai xo¸ tÊt c¶ c¸c ®Ýnh môc cïng tÖp chØ sè. - Chó ý: + Khi gÆp lÖnh xãa ®Ýnh môc, Foxpro sÏ t×m ®Ýnh môc ®-îc chØ thÞ trong tÖp chØ sè kÕt hîp kh«ng ®éc lËp tr-íc (nÕu cã), nÕu kh«ng t×m thÊy míi ®i t×m ë tÖp chØ sè kÕt hîp ®éc lËp ®ang më. 2. CËp nhËt c¸c tÖp chØ sè: - Khi dïng tÖp chØ sè ta ph¶i lu«n ®¶m b¶o sù t-¬ng thÝch gi÷a tÖp CSDL vµ c¸c tÖp chØ sè liªn quan. Mäi sù cËp nhËt kh«ng ®ång bé ®Òu dÉn ®Õn nh÷ng sai sãt kh«ng thÓ l-êng tr-íc ®-îc. - Khi CSDL thay ®æi, c¸c tÖp chØ sè hiÖn ®ang më sÏ tù ®éng thay ®æi theo cho phï hîp, nh÷ng tÖp chØ sè kh«ng ®-îc më sÏ kh«ng ®-îc cËp nhËt. §Ó cËp nhËt l¹i tÖp chØ sè ta më tÖp CSDL råi dïng lÖnh: REINDEX - LÖnh nµy sÏ chØ sè ho¸ l¹i tÊt c¶ c¸c tÖp chØ sè ®ang më sao cho phï hîp víi t×nh tr¹ng míi nhÊt cña CSDL hiÖn hµnh. - Nãi chung, tr-íc khi dïng thø tù cña c¸c tÖp chØ sè mµ kh«ng biÕt ch¾c cã lçi thêi hay kh«ng th× ta nªn chØ sè ho¸ l¹i. 2. Sao chÐp gi÷a c¸c lo¹i tÖp chØ sè: a. Sao chÐp c¸c tÖp chØ sè IDX vµo tÖp chØ sè CDX: - Có ph¸p: COPY INDEXS ALL [TO ] - Gi¶i thÝch: + LÖnh nµy sÏ sao chÐp c¸c tÖp chØ sè IDX ®ang më vµ ®-îc liÖt kª trong thµnh c¸c ®Ýnh môc cña tÖp chØ sè kªt hîp ®éc lËp cã tªn lµ . NÕu ch-a cã th× m¸y sÏ tù ®éng t¹o ra, tÖp nµy sÏ chØ sè ho¸ CSDL ®ang më. + NÕu dïng tham sè ALL thay v× th× tÊt c¶ c¸c tÖp chØ sè ®ang më ®Òu ®-îc sao chÐp. + NÕu kh«ng cã TO th× sÏ sao chÐp c¸c tÖp chØ sè IDX thµnh c¸c ®Ýnh môc cña tÖp chØ sè kÕt hîp CDX kh«ng ®éc lËp (trïng tªn víi tªn tÖp CSDL). + NÕu trong tÖp chØ sè CDX cã ®Ýnh môc trïng tªn víi tªn tÖp IDX trong danh s¸ch th× m¸y sÏ hái cã chÐp ®Ì lªn kh«ng khi ®ang lµm viÖc ë chÕ ®é SET SAFETY ON. b. Sao chÐp mét ®Ýnh môc thµnh tÖp chØ sè IDX: - Có ph¸p: COPY TAG [OF ] TO - Gi¶i thÝch:
  19. + LÖnh nµy sÏ sao chÐp mét ®Ýnh môc cã tªn lµ cña tÖp chØ sè kÕt hîp CDX ®ang më lµ thµnh tÖp chØ sè IDX. + NÕu kh«ng cã OF th× m¸y sÏ lÊy cña tÖp chØ sè kÕt hîp kh«ng ®éc lËp. 3. C¸c lÖnh t×m kiÕm nhê tÖp chØ sè: a. LÖnh t×m kiÕm SEEK: - ViÖc t×m kiÕm nhanh theo lÖnh Seek chØ ®-îc tiÕn hµnh khi tÖp CSDL ®· ®-îc chØ sè ho¸ - Có ph¸p: SEEK - Gi¶i thÝch: + lµ mét biÓu thøc cã gi¸ trÞ cïng kiÓu víi kiÓu gi¸ trÞ kho¸ trong tÖp chØ sè. + LÖnh nµy sÏ ®Þnh vÞ tíi b¶n ghi ®Çu tiªn cã gi¸ trÞ kho¸ trïng bíi gi¸ trÞ cña nÕu t×m thÊy, sÏ ®Þnh vÞ con trá tíi vÞ trÝ cuèi tÖp nÕu kh«ng t×m thÊy. Hµm Found() dïng ®Ó kiÓm tra viÖc cã t×m thÊy hay kh«ng, nÕu t×m thÊy th× cho gi¸ trÞ lµ .T. cßn kh«ng t×m thÊy th× cho gi¸ trÞ lµ .F. + §Ó quÐt c¸c b¶n ghi kÕ tiÕp cã cïng gi¸ trÞ kho¸ sau khi ®-a vµo lÖnh Seek, ta dïng tõ kho¸ While trong c¸c lÖnh List, Display, Edit, Browse... + Trªn c¸c c¬ së d÷ liÖu lín, viÖc t×m kiÕm theo lÖnh Seek nhanh h¬n rÊt nhiÒu so víi lÖnh Locate. b. LÖnh t×m kiÕm FIND: - Có ph¸p: FIND - Gi¶i thÝch: + LÖnh trªn t×m kiÕm th«ng tin trªn tÖp ®· ®-îc chØ sè ho¸. + cã thÓ lµ biÕn ký tù, biÓu thøc vµ chØ chÊp nhËn lµ x©u ký tù. V× vËy x©u ký tù trong lÖnh nµy kh«ng cÇn ph¶i ®Æt trong dÊu nh¸y ®¬n hay nh¸y kÐp. + LÖnh nµy so s¸nh víi gi¸ trÞ cña kho¸ s¾p xÕp. NÕu viÖc so s¸nh thµnh c«ng th× con trá b¶n ghi dõng l¹i ë b¶n ghi ®Çu tiªn cã kho¸ s¾p xÕp trïng víi , muèn t×m tiÕp th× ta ph¶i ra lÖnh SKIP (v× c¸c b¶n ghi cã cïng gi¸ trÞ kho¸ sÏ ®-îc s¾p xÕp liÒn nhau). 4. Mét sè nhËn xÐt vµ chó ý: a. NhËn xÐt vÒ c¸c lo¹i tÖp chØ sè: - TÖp chØ sè IDX cã ®Æc ®iÓm lµ mçi tÖp chØ sè øng víi mét thø tù s¾p xÕp, dïng thø tù s¾p xÕp nµo th× më tÖp chØ sè t-¬ng øng. Hµn chÕ cña tÖp lo¹i nµy lµ chØ s¾p xÕp theo chiÒu t¨ng dÇn cña kho¸, nÕu dïng nhiÒu thø tù s¾p xÕp th× sè l-îng tÖp trªn ®Üa sÏ nhiÒu, khi CSDL thay ®æi cÇn ph¶i cËp nhËt tÊt c¶ c¸c tÖp chØ sè.
Đồng bộ tài khoản