




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第三章查詢和統計簡單查詢順序查詢索引查詢(快速查詢)統計(計數、求和、求平均)分類匯總多表操作臨時關系臨時關系與永久關系的區別查詢與查詢設計器SQL語言重要第1次第2次第3次第4次第5次第6次3
.
1順序查詢定義:所謂順序查詢就是按照記錄的物理順序或者邏輯順序,從首記錄開始按指定條件順序搜索,將記錄指針定位到第一條符合指定條件的記錄上,或者將記錄指針定位到文件結束標志。查找表中全部女性記錄物理排序邏輯排序文件結束標志第7次
順序查詢操作可以用命令LOCATE和CONTINUE實現,也可以用限制對記錄和字段訪問的菜單實現。3.1.1順序查詢命令格式:LOCATE[<范圍>]FOR<條件1>[WHILE<條件2>]功能:在當前表中按順序搜索,以尋找滿足指定條件的第一條記錄。格式:CONTINUE功能:按照前面的LOCATE命令設置的條件繼續查詢.3.1順序查詢3.1順序查詢USESTUDENTINCLOCATE
FOR
性別="男"CONTINUECONTINUECONTINUECONTINUE1FFEndofFile3FT5FT7FT8FT11TFRECNO()EOF()FOUND()函數值RECCOUNT()10說明:(1)
如命令中缺省<范圍>,LOCATE默認范圍是表中的所有(ALL)的記錄。被搜索的表不必建立索引。(2)
若LOCATE發現滿足條件的記錄時,記錄指針將定位于該記錄上,此時,RECNO()返回該記錄號,FOUND()函數返回.T.、EOF()函數返回.F.。若未找到滿足條件的記錄,則RECNO()返回表中的記錄總數加1,FOUND()函數返回.F.,而EOF()函數返回.T.。(3)
LOCATE發現一個滿足條件的記錄之后,可用CONTINUE命令,在表的剩余記錄繼續查找滿足條件的下一個記錄。CONTINUE命令可以重復使用,直至到達范圍的邊界或表尾。例查找STUDENT.DBF中,所有“王”姓學生的數據記錄,
USESTUDENTLOCATEFORSUBSTR(姓名,1,2)=“王”
DISPLAYCONTINUEDISPLAY…
問題:查找所有“王”姓學生還可以用其他方法嗎?例,假定STUDENT.DBF學生數據表文件中前六條記錄均為男生的記錄,執行以下命令序列后,RECNO()函數的值是_____。
GO3LOCATENEXT3FOR性別="男"
A)3B)4C)5D)6
例:對表STUDENT操作,查找籍貫為湖北的學生。
LOCATEFOR“湖”$籍貫
DISPLAYCONTINUEDISPLAY
又例:查找所有“王”姓學生的數據記錄,輸入以下命令(?):
SET
EXACT
OFFLOCATEFOR姓名=“王”
DISPCONTINUE例:查找男性且未婚的記錄locatefor性別=‘男’.and.
.not.婚否displaycontinuedisplay例:查找男性五年制且1976年后出生的記錄Locate
for性別=‘男’.and.學制=‘五’;.and.year(出生年月)>1976displaycontinuedisplay若要按特定的順序定位、查看或操作記錄,可以使用索引。VFP使用索引作為排序機制,為開發應用程序提供靈活性。基本概念:VFP索引是由指針構成的文件,這些指針按照索引關鍵字進行排序。索引文件和表文件分別存儲,并且不改變表中記錄的物理順序。3.2索引與快速查詢創建索引是創建一個由指向.dbf文件記錄的指針構成的文件。若要按照特定順序處理表記錄,可以建立一個(或多個)相應的索引,使用索引還可以加速對表的查詢操作。索引文件主要包含兩部分:1.索引關鍵字;2.指向原表文件中與關鍵字相對應的記錄號。索引文件索引(索引項或索引標識)保存在索引文件中。10500211050012040023040011003003903002503001602002702001801002401001記錄號編號馬超頻0500111邵林文賀0300310宋紹明030029張小鵬010028劉巧玲020017賈貴紅020026王為冬030015韓偉東010014姜瑞青040013林文靈040022苗莉050021姓名編號記錄號索引標識示意結構表文件部分數據索引的類型主索引、候選索引、唯一索引、普通索引在結構復合索引文件中數據庫表:主索引、候選索引、唯一索引、普通索引自由表:
候選索引、唯一索引、普通索引在單索引文件中,只有唯一索引、普通索引索引的類型
主索引(PrimaryIndex):
主索引能保證字段中輸入值的惟一性,同時能決定記錄的處理順序。主索引僅適用于數據庫表。在數據庫中,一個表上只能建立一個主索引,如果有必要確立記錄的其他處理順序,可以添加侯選索引。主索引可以作為一對多永久關系中的“一方”。
索引的類型
侯選索引(CandidateIndex)
侯選索引與主索引具有相同的特性相同,建立侯選索引的字段可以看作是侯選關鍵字,所以一個表可以建立多個侯選索引。
侯選索引像主索引一樣要求字段值的唯一性并決定了處理記錄的順序。在數據庫表和自由表中都可以建立侯選索引。候選索引與主索引的差別:一個表只能創建一個主索引一個表可創建多個候選索引唯一索引(UniqueIndex):
唯一索引允許指定字段中出現重復值,但以該字段的首次出現值為基礎,選定一組記錄。再對選定的記錄進行排序,輸出時無重復值。
可對同一表建立多個唯一索引。普通索引(RegularIndex):
普通索引也可以決定記錄的處理順序,但允許字段中出現重復值。每一個表都可以建立多個普通索引。另外,普通索引還可以作為一對多永久關系中的“多方”。
1.單索引文件只能按照一種關鍵字進行索引的索引文件。其擴展名為.IDX。2.復合索引文件可按多個關鍵字進行索引的索引文件。其擴展名為.CDX。一個復合索引文件允許存放多個索引,用以滿足一個表文件可能有多種索引順序的要求。每個索引有一個標記(Tag)。VFP提供了兩種索引文件:復合索引文件又分為:結構復合索引和非結構復合索引兩種類型。結構復合索引文件:名字由系統自動分配,與表文件名相同,擴展名為.CDX。當打開表文件時,該類索引文件也自動打開。非結構復合索引文件:名字由用戶給定,與表文件名不同,擴展名為.CDX。當打開表文件時,該類索引文件不能自動打開,須由用戶指定打開。
建立|刪除主索引命令
:格式:
ALTERTABLE
表名
ADD|DROPPRIMARYKEY
索引關鍵字[tag索引標識名]
其中:
ADD用于添加主索引,DROP用于刪除主索引。缺省TAG短語時表示索引關鍵字與字段同名。例如:為數據庫表student添加以學號字段為索引關鍵字的主索引??捎妹睿篈ltertablestudentaddprimarykey
學號由于一個數據庫表只有一個主索引,所以刪除主索引不必指明索引關鍵字。例如,刪除數據庫表student主索引的命令為:Altertablestudentdropprimarykey用命令建立索引
命令方式
:格式:
INDEXON索引關鍵字
TO
單索引文件名
|TAG
索引標識名
[OF非結構復合索引文件名][FOR條件][unique][additive][ascending][descending]
功能:按索引關鍵字表達式建立一個符合條件的索引文件。利用該文件可以按照某種邏輯順序顯示或訪問表記錄。
用命令建立索引說明:
◆ON索引關鍵字
:指定索引表達式◆TO單索引文件:建立一個單獨的索引文件,系統默認擴展名.IDX?!鬞AG索引標識名:在一個結構復合索引文件中建立多個索引,其索引文件名與表名相同,擴展名.CDX。◆OF非結構復合索引文件名:指定生成非結構復合索引文,其索引文件名由用戶指定,擴展名“.CDX”◆FOR
條件:只對滿足條件的記錄進行索引。◆unique:建立唯一索引。(只將索引表達式值相同值的首記錄放入索引文件中)◆ADDITIVE
所有先前已打開的索引文件保持打開狀態,否則,關閉先前已打開的索引文件(結構復合索引文件除外)?!鬉SCENDING
或DESCENDING
說明建立升序或降序索引,默認升序。
◆單索引文件的索引關鍵字只能是N、C、D型字段。
◆單索引文件索引關鍵字表達式為多個關鍵字組合(稱為多重索引)時,要用字串連接符“+”號連接起來,并且類型要一致。若是N和D型數據,須用STR()和DTOC()函數將其轉化成C型。多重索引時,排在最前面的為主索引關鍵字。排序時,先排主索引關鍵字,再排第二關鍵字,以后依次類推。例:①對表STUDENT操作,按姓名(升序)建立單索引文件姓名.idx。
②對表score操作,按計算機(降序)建立單索引文件JSJ.idx。SELECT1 USESTUDENT
INDEXON姓名
TO姓名
BROWSE use
score
in
0 select
score INDEXON-計算機
TO
jsj
&&單索引文件中,只能對數值型字段做降序操作。
BROWSEdir*.idx例:建立結構復合索引文件,其中包括2個索引:①記錄按姓名降序排列,索引標識為普通索引。②記錄按性別升序排列,性別相同時按專業升序排列,索引標識為普通索引。USESTUDENTINDEXON
姓名TAGXMdescList&&記錄已按姓名降序排列INDEXON性別+專業TAGxbzyList*記錄已按性別升序排列,性別相同時按專業升序排列DIR*.CDXBROWSE例:建立以專業索引的非結構索引文件SZY.DBF,其中一個索引:記錄按專業升序排列,專業相同時按出生年月升序排列。DIR*.CDXUSESTUDENTINDEXON專業+dtoc(出生年月)TAGzycsOFSZY*如果是ON專業+dtoc(出生年月)desc則同為降序排列DIR*.CDXBROWSE在表設計器中建立索引(1)打開數據庫表STUDENT.DBF。
(2)在彈出的“表設計器”對話框中,單擊“字段”選項卡,在“索引”框中選擇索引為升序或降序。(3)單擊“索引”選項卡,在“索引名”框中,鍵入索引標記或保留原索引名。
(4)在“類型”列表中,選定索引類型。
(5)在“表達式”框中,鍵入作為記錄排序依據的字段名,或者單擊表達式框后的按紐,在“表達式生成器”對話框中,建立表達式。
(6)如果希望有選擇的輸出記錄,可在“篩選”框中輸入篩選表達式,或者單擊篩選表達式框后的按紐,在“表達式生成器”對話框中,建立篩選表達式。
(7)選中“確定”按紐。
(1)打開已建好索引的表,單擊【顯示】菜單的“瀏覽”命令。
(3)在“表”菜單中選中“屬性”命令,系統彈出“工作區屬性”對話框。
(4)在“索引順序”框中,選中某一索引。
(5)單擊“確定”按紐。顯示在“瀏覽”窗口中的表將按照索引關鍵字(姓名)指定的順序排列記錄。3.2.1.3激活索引對記錄排序對STUDENT.DBF表中的性別和出生年月進行排序。
(1)在表設計器的“索引”選項卡單擊“插入”命令按鈕;(2)在”索引名“框中,輸入索引名,如性別。
(3)在“類型“框中,選擇索引類型,如普通索引。
(4)單擊“表達式”框右邊的按紐,系統彈出“表達式生成器”對話框。(5)在對話框中輸入索引表達式“性別+CTOD(出生日期)”,最后單擊“確定”按鈕。3.2.1.4多個字段索引(5)在“表達式生成器”對話框的“表達式”框中,輸入表達式:性別+DTOC(出生年月)
(6)選中“確定”按紐。(7)在“表”菜單中選中“屬性”命令,在“工作區屬性”窗口中,選“索引順序”的“student:性別”,單擊“確定”,顯示表達式“性別+DTOC(出生年月)”排序的結果。
1.打開索引文件
與表名相同的結構索引在打開表時都能自動打開,但是對于非結構索引必須在使用之前打開索引文件。格式1:USE
表名[INDEX〈單索引文件名〉]
[ORDER<索引順序號>|
[TAG]<索引標記名>[OF<非結構復合索引文件名>][ASCENDING|DESCEDING]3.2.1.5.使用索引文件說明:
(1)在格式1中,命令USE表名
INDEX索引文件名,打開表文件的同時打開單索引文件或非結構復合索引文件,并指定復合索引文件中的主控標識.。(2)在格式1中,命令USE表名ORDER
標記名,或USE表名
ORDER[TAG]標記名,打開表文件的同時打開結構復合索引文件,并指定復合索引文件中的主控標識.格式2:
SETINDEXTO[單索引文件列表]格式3:
SETORDERTO<索引標記名>|<索引序號>[OF<非結構復合索引文件名>][ASCENDING|DESCEDING]][ADDTIVE]說明:在格式2、3中,必須先打開表文件和相關的索引文件:SETINDEXTO〈索引文件列表〉:指定要打開的一個或多個索引文件列表,該列表中各索引文件用逗號分隔.其中可以包含任意個.IDX或非結構索引文件名。
SETORDER
TOTAG〈索引標記名〉:指定結構索引文件中的一個標識作為主控標識。(3)SETORDERTOTAG〈索引標記名〉OF〈CDX索引文件名〉,指定非結構復合索引文件中的一個標記作為主控索引標識。例:打開表文件,同時打開單索引文件姓名.IDXUSE
STUDENT
INDEX
姓名
LIST例:先打開表文件,再打開單索引文件jsj.IDXUSESTUDENTSETINDEXTOjsj
LIST例:打開表文件和結構復合索引文件,并按“姓名”索引排序.
USE
STUDENT
ORDERXMLIST例:先打開表文件,再按性別專業排序。
USESTUDENTSETORDERTOxbzy例:打開表文件和以專業和出生年月為索引的非結構復合索引文件SZY.CDX,再指定以專業和出生年月
為主控索引。USE
STUDENT
INDEXSZYSETORDERTOzycs如果打開表文件時沒有打開與之相關的單索引文件或非結構復合索引文件,則修改表文件中的數據時,相關的單索引文件或非結構復合索引文件必須用“重新索引”命令修改,其命令格式如下:
REINDEX
功能:按照修改后的表自動修改與之相關的單索引文件和復合索引文件。注意:執行上述命令前,必須先打開表文件和與之相關的索引文件。3.2.1.6索引文件的修改1.關閉索引
格式:(1)CLOSEINDEXS
(2)SETINDEXTO
功能:兩者都是關閉除結構化復合索引文件外的所有索引文件。2.刪除索引字段刪除索引字段可以在表設計器中進行,也可以用命令,其格式是:
DELETETAGTagName
刪除由TagName指定的索引。或DELETETAGALL
刪除全部索引。3.2.1.7索引文件的關閉例:分別按性別、姓名排序,再刪除索引標識。(設表中已經建立了性別、性別和專業的復合索引XB和xbzy)USESTUDENTBROWSE
SETORDERTO1&&或者SETORDERTOXmBROWSESETORDER
TO2&&或者SETORDERTOxbzyBROEWSEDELETAG
xm&&刪除性別字段的索引標識“XB”DELETAG
ALL&&刪除全部索引標識快速查詢就是索引查詢。與順序查詢相比,索引查詢因其速度快而被廣泛采用。VFP系統提供了兩條快速(索引)查找記錄命令:FIND、SEEK。3.2.2.1FIND命令格式:FIND<表達式>功能:索引查找某個表,將記錄指針指向與表達式相匹配的第一條記錄。3.2.2快速查詢說明:(1)參數<字符表達式>:可以是數值型常量或字符變量;如果是字符變量,則應在該變量前加宏代換函數“&”。(2)要求當前表已經建立了索引,且表達式之值必須是表中索引關鍵字的值。(3)如果找到匹配的記錄,則RECNO()函數返回匹配記錄的記錄號,FOUND()函數返回.T.。而EOF()函數返回.F.;如果未找到匹配的記錄,則RECNO()函數的返回值等于表的記錄數加1,FOUND()函數返回.F.。而EOF()函數返回.T.。說明:(4)FIND命令只能將記錄指針定位于與索引關鍵字相匹配的第一條記錄,要繼續查找下一個匹配記錄,則需用SKIP命令。若要顯示該記錄的內容,可用DISPLAY命令。(5)FIND命令查找字符串時。該字符串可以用定界符將字符串括起來,也可以省略定界符。但是,如果該字符串本身就包含單引號、雙引號和方括號,就必須用另一種定界符將字符串擴起來。格式:SEEK<表達式>功能:索引查找某個表,執行該命令將記錄指針指向與指定表達式值相匹配的第一條記錄。說明:SEEK命令的操作與FIND命令類似。但是,當<表達式>為字符型內存變量是SEEK命令不能用&函數;<表達式>可以是字符型、數值型、日期型數據,如果是字符常量時,必須用定界符將字符串括起來。3.2.2.2SEEK命令例:在STUDENT表中搜索查找學制為五年制的學生。INDEXON學制
TOXZFIND五&&或者FIND“五”,或者SEEK“五”?FOUND(),EOF()DISPSKIP例:搜索查找出生年月為10/13/76的記錄。INDEXON出生年月
TODASEEKCTOD(‘10/13/76’)
&&或者SEEK{^1976/10/13}FIND{^1976/10/13}&&出現“數據類型不匹配”錯誤DISP例:搜索查找性別為男,且是79年11月3日出生的記錄。
USESTUDENTINDEXON
性別+DTOC(出生年月)
TOXBCFIND
“男11/03/79”&&或者FIND“男”+“11/03/79”例:搜索查找臨床醫學專業女學生。
INDEXONALLTRIM(專業)+性別
TOXBZYseek‘臨床醫學女’display例:查找98級男學生,顯示前兩名記錄的學號(C型)、姓名、籍貫。indexon
LEFT(學號,2)+性別TAGXHXBDESCFIND
98男listnext
2
學號,姓名,籍貫或者Index
on
LEFT(學號,2)+性別TOXHXBSeek“98男”&&必須用定界符括起來Display
學號,姓名,籍貫SkipDisp學號,姓名,籍貫例:查找“王”姓的同學(模糊查詢)SET
EXACT
OFFUSESTUDENTORDERXMFIND
王&&或者SEEK“王”DISPLAYName=“王”FIND&NAME&&或者
SEEKNAMEDISPLAYSETEXACTONFIND王&&或者SEEK“王”DISPLAY&&查詢無結果,除非表中有姓名是“王”的記錄3.3統計—計數
COUNT
[Scope][FOR<條件>][TO<內存變量>]功能:在指定范圍內,統計滿足條件的記錄個數說明:本命令的默認范圍是ALL;
例,執行下列語句后,變量A1,A2,A3,A4,A5分別是什么?USESTUDENT&&表中學號字段是字符型COUNTCOUNT
TOA1COUNTTO
A2FOR
性別=“男”COUNTFORLEFT(學號,2)=“96”TOA3COUNTFORleft(學號,2)=“98”ORleft(學號,2)=“99”
TOA4COUNTTOA5FOR
!婚否3.3統計—求和SUM
[<表達式表>][Scope]
[FOR<條件>]
[TO<內存變量表>
|TO
ARRAY
數組]功能:在指定范圍內,按照表達式表的要求,對滿足條件記錄的數值型字段求和。說明:本命令的默認范圍是ALL;當缺省表達式表時,將對當前表中所有數值型字段求和;當缺省TO內存變量表時,求和結果不予保存;當表達式表
和內存變量表
都選擇時,表達式表中的表達式數目必須與內存變量表中的變量數目相等;3.3統計—求和USESCORESUMSUM
生物,化學SUM
生物,化學TOSW,HXSUM
生物,化學TOSW,HXFORLEFT(學號,2)="98"Settalkon
3.3統計—求平均AVERAGE[表達式表][Scope][FOR<條件>]
[TO
內存變量表|TOARRAY數組]功能:在指定范圍內,按照表達式表的要求,對滿足條件記錄的數值型字段求平均值。說明:本命令的默認范圍是ALL;當缺省表達式表時,將對當前表中所有數值型字段平均值;當缺省TO內存變量表時,求和結果不予保存;當表達式表和內存變量表都選擇時,表達式表中的表達式數目必須與內存變量表中的變量數目相等;例:1.分別統計student.dbf中男生和女生的人數;2.分別求score.dbf中98級、99級學生的計算機、英語的平均成績.(保存在數組A和B中)UsestudentCountfor性別="男"
TOMCountfor性別<>"男"
TOF?"男生的人數是:",
M?"女生的人數是:",FAver計算機,英語forleft(學號,2)=“98”toarrayaAver計算機,英語
forleft(學號,2)=“98”toarrayb?“98級計算機成績:",A1(1),"98級英語成績:",A1(2)?“99級計算機成績:",B1(1),"99級英語成績:",B1(2)思考:怎樣用一個COUNT命令統計表中男、女生之和?怎樣統計表中姓名不包含“王”的學生人數?例:計算SCORE表中四門課程的平均值,并在表末尾增加一空記錄,將學號用“平均分”填充,各門課程平均分填入相應字段。USE
SCOREAVERAGETOA,B,C,D&&學號字段必須是字符型APPEND
BLANK
REPLACE
學號WITH“平均分”,生物
WITHA,;
化學
WITHB,計算機WITHC,英語WITHDBROWSE3.3統計—分類匯總TOTALTO〈表文件名〉ON〈表達式〉
[FIELDS字段名表][Scope][FOR
〈條件〉]功能:對當前表中的數值型字段進行匯總說明:本命令的默認范圍是ALL;如缺省字段名表,則對所有數值型字段進行匯總,否則,僅對字段名表中的數值型字段匯總;在匯總前,表中記錄必須物理有序或者邏輯有序,且匯總表達式必須是有序的依據中的一部分或者全部。了解3.3統計—分類匯總說明字段名的值域必須是有限個,且數量比較少;匯總結果表的結構與當前表的結構一樣;匯總結果表中的記錄數與字段名的值域中個數是相等的;匯總結果以表的形式保存在表中,因此,需打開結果表瀏覽,才能看到匯總結果;注意:本命令中的字段名表,不對匯總結果表起作用,而僅僅是限制需匯總的數值型字段;當匯總溢出時,用“*”代替3.3統計—分類匯總USESCOREIN0SELECTSCORESETORDERTOZYTOTALONZYTOT1USET1IN0SELECTT1BROWSE假設在SCORE表結構復合索引文件中,有三個索引標識:XH→學號、ZY→專業、XB→性別3.4多表操作有關概念的回顧:工作區:在內存中,為表操作而開辟的一塊區域。工作區號:1-32767工作區碼:A、…、J、W11、…、W32767當前工作區:注意:啟動VFP后,1號工作區為當前工作區;當前表當前記錄非常重要本節內容的應用是對前面所學內容的綜合運用3.4多表操作—別名表的別名:在工作區中,打開一個表后,系統立即賦予一個可引用該表的名字默認別名:表的默認別名就是表名指定別名:在USE命令中使用ALIAS子句表別名的用途主要體現在多表操作中:在當前工作區中,可引用其它工作區中表的字段;可選擇別名所對應的表所在的工作區作為當前工作區;3.4多表操作—別名格式1:TableAlias.FieldName (小數點)格式2:TableAlias->FieldName (減號加大于號)格式3:WorkArea
.FieldName (小數點)格式4:WorkArea
->FieldName (減號加大于號)說明:在格式3和格式4中,WorkArea只能是工作區碼,不能是工作區號。例如:假設表STUDENT和表SCORE已分別在A工作區和B工作區中打開,當前工作區為A區。
LISTFIELDS
學號,姓名,SCORE.生物,SCORE->化學,B.計算機,B->英語3.4當前工作區的選擇可視方法:在數據工作期中,選擇表即可選擇該表所在的工作區(只能選擇有表的工作區)命令方法:格式1:SELECT
WorkArea
格式2:
SELECT0格式3:
SELECT
TableAlias
功能:當前工作區選擇。說明:格式2的功能是選擇編號最小的空閑工作區為當前工作區;當工作區中無表時,請用格式1或者格式2;當工作區中有表時,請用格式1或者格式3;3.4當前工作區的選擇SELECT
31#A2#B3#C4#D5#Estudentscoreliberregister請思考當前工作區?USEstudentSELECTBUSEscoreSELECT5USEbookALIASliberSELECT0USEregisterSELECTliberBROWSE1#A2#B3#C5#E1#A2#B3#C5#E5#E3.4數據工作期定義:表單、表單集或報表所使用的當前動態工作環境的一種表示。每一個數據工作期包含有自己的一組工作區。分類:默認數據工作期(公共數據工作期)專用數據工作期(私有數據工作期)功能:打開或顯示表或視圖;建立臨時關系;選擇當前工作區;設置工作區屬性(在工作區屬性窗口中,單擊“修改”按鈕,還可進入表設計器修改表結構)。進入:在“常用”工具欄上選擇“數據工作期窗口”按鈕;選擇“窗口”菜單的“數據工作期”命令;3.4數據工作期窗口布局當前工作期:顯示當前數據工作期的名稱或選擇當前數據工作期。別名區:顯示當前數據工作期中,所有已打開的視圖和表的別名。關系區:表明臨時關系,這個關系是在“別名”框中的表或視圖之間建立的。按鈕區:狀態顯示區:3.4數據工作期窗口按鈕顯示“工作區屬性”對話框,在該對話框中可以:單擊“修改”按鈕,進入表設計器,修改表的結構;定義數據過濾器;定義、激活、關閉活動字段表(相當于全局的字段名表);選擇或取消主控索引;在“瀏覽”窗口中顯示在“別名”框中選擇的表或視圖,在該窗口中可以檢查、編輯或追加數據。顯示“打開”對話框,與“添加表或視圖”對話框相似,可以選擇要打開的表或視圖。從“別名”框中移去選中的表或視圖,以及任何相關的文件。 使用“表達式生成器”,定義表或視圖之間的一對一的臨時關系。
當兩個表之間沒有定義索引順序時,對話框會在“表達式生成器”對話框之前顯示“設置索引次序”對話框。顯示“創建一對多關系”對話框,在該對話框中可以在子表和父表之間建立一對多臨時關系。使用方法:選擇一對一關系中的父表,再單擊本按鈕就可將一對一關系改為一對多關系(雙線)。屬性:顯示“工作區屬性”對話框,在該對話框中可以:單擊“修改”按鈕,進入表設計器,修改表的結構;定義數據過濾器;定義、激活、關閉活動字段表(相當于全局的字段名表)選擇或取消主控索引;在“瀏覽”窗口中顯示在“別名”框中選擇的表或視圖,在該窗口中可以檢查、編輯或追加數據。顯示“打開”對話框,與“添加表或視圖”對話框相似,可以選擇要打開的表或視圖。從“別名”框中移去選中的表或視圖,以及任何相關的文件。使用“表達式生成器”,定義表或視圖之間的一對一的臨時關系。當兩個表之間沒有定義索引順序時,對話框會在“表達式生成器”對話框之前顯示“設置索引次序”對話框。顯示“創建一對多關系”對話框,在該對話框中可以在子表和父表之間建立一對多臨時關系。使用方法:選擇一對一關系中的父表,再單擊本按鈕就可將一對一關系改為一對多關系。3.4臨時關系定義:是兩表之間的一種關系,這種關系根據兩表公共關鍵字的對應關系,能邏輯鏈接在不同工作區打開的兩個相關表,使這兩個表從邏輯上聯接成一個大表,方便從不同表中提取相關數據。作用機理:臨時關系通過父表中記錄指針的移動,再根據兩表的公共關鍵字的對應關系,而自動控制子表中記錄指針的移動。父表:在臨時關系中起主導作用的表;也稱主表或主控表。子表:在臨時關系中受父表控制的表;也稱從表或受控表。效果:通過這種指針的聯動關系,可從父表、子表的當前記錄中,收集到能全面反映一個個體的完整數據或者所需要的與一個個體有關的分布在各表當中的離散數據。3.4臨時關系的類型
臨時關系的類型指的是兩表之間記錄指針聯動的方式。 假設在子表中有多重記錄與主表中的一條記錄相對應:一對一的臨時關系當主表中的記錄指針移動時,子表中記錄指針只指向多重記錄的第一條一對多的臨時關系當主表中的記錄指針移動時,子表中記錄指針將按順序指向多重記錄的第一條、第二條、…,而保持主表記錄指針不動,直到子表中的記錄指針掃過多重記錄后,主表指針才能繼續移動。3.4一對一的臨時關系3.4一對多的臨時關系3.4建立臨時關系建立步驟:打開父表;打開子表;選擇子表所在的工作區;激活子表的索引:若子表無索引,則建立索引;選擇主表所在的工作區;建立從父表到子表的一對一的臨時關系;或者建立從父表到子表的一對多的臨時關系;建立方法可視方法:數據工作期命令方法:SETRELATIONTO3.4可視方法進入數據工作期窗口:選擇“打開”按鈕,分別打開兩個表;在“別名”區,單擊子表(相當于選擇子表所在的工作區)scorestudent學號單擊“屬性”按鈕,為子表在“工作區屬性”對話框的“索引順序”框中,選擇主控索引;在“別名”區,單擊父表(相當于選擇子表所在的工作區)單擊”關系“按鈕,再單擊子表,在表達式生成器中選擇關鍵字,完成臨時關系的建立;3.4有關命令SETRELATIONTO <表達式1>INTO<WorkArea1|TableAlias1> [,<表達式2>
INTO<WorkArea2|TableAlias2>]...
[ADDITIVE]功能:建立從父表到子表的臨時關系。說明:格式中的所有WorkArea:只能為工作區碼WorkArea1、TableAlias1:指定子表所在的工作區WorkArea2、TableAlias2:指定子表所在的工作區ADDITIVE:保留已有的臨時關系3.4命令方法若使用結構復合索引存在CLOSEALLUSEstudent
IN
0USEscoreIN0
ORDERxhSELECTstudentSETrelationto學號
intoscorestudentscore學號CLOSEALLSELECT0USEscoreINDEX
ON
學號TAGxhSELECT0USEstudentSETrelationto學號
intoscore不存在3.4命令方法CLOSEALLUSEstudentIN
0USEscore
IN
0
INDEX
xhSELECTstudentSETrelationTO
學號
INTOscore若使用單索引CLOSEALLSelect0USEscoreIndexON
學號TOxhSelect0Usestudentsetrelationto學號
into
score存在不存在3.4檢驗方法建立臨時關系的關鍵兩表必須有公共字段,且該公共字段的名字、類型、寬度在兩表中必須一致。臨時關系建立后的檢查方法分別打開兩表的數據窗口在主表的數據窗口移動記錄指針,如果子表的數據窗口中的記錄發生相應的變化,則臨時關系正確,否則,不正確。臨時關系的使用關鍵:必須在主表中移動記錄指針,子表的記錄指針才能跟隨移動;反過來,臨時關系不起作用。3.4臨時關系的應用例,1.在student表中增加“總分”和“平均分”字段,分別用score表中的生物、化學、計算機和英語成績的總和與平均成績填充。2.顯示總分前三名記錄的學號,姓名,籍貫,總分.(p104-二)Altertablestudentadd總分n(6,2)Altertablestudentadd平均分n(6,2)Select2USEscoreIndexon學號to學號selectstudentSETrelationTO學號intoscoreReplaceall總分withb.生物+b.化學+b.計算機+b.英語
,
平均分with總/4Indexon總分desctagzfLISTnext3學號,姓名,籍貫,總分3.4臨時關系的應用從student表和score表中,提取生物、化學均不及格的學生名單wwe.dbf(表中只有這些學生的學號、姓名、生物、化學成績)CLOSEALLSelectBUSEscoreindexon學號TOxhSeleAUSEstudentSETrelationto
學號into
B
&&建立臨時關系Copytowwefields
學號,姓名,score.生物,b.化學;
FORb.生物<60ANDb.化學<603.4臨時關系的應用在student表中,增加一個獎學金字段(L,1),并使score表中平均分>90的學生獲得獎學金。(P104-二.4)Replace獎學金WITH.t.;FOR(b.生物+b->化學+b.計算機+b.英語)/4>=90Select2UsescoreIndexon學號toxhselectstudentSetrelationto學號intoscore
&&建立臨時關系CloseallAltertablestudentadd獎學金L
&&增加“獎學金”字段3.4臨時關系的應用rosterregisterbookrosterregisterbookSelect
0Use
rosterSelect
0USE
registerSetorder
tojsdmSelect0UserosterSetordertojcbm教師代碼jsdm教材編碼jcbmCLOSEALLSelectrosterSetrelato教師代碼intoregisterSelectregisterSetrelato教材代碼intobookADDITIVESELECTroster3.4臨時關系的應用rosterregisterbookregisterSELECTAUSE
rosterindexon
教師代碼to
jsdmSELECTbUSEregisterSELECTCUSE
bookindexon教材編碼tojcbm教師代碼jsdm教材編碼jcbmrosterbookCLOSEALLSETrelato
教師代碼intoASETrelato教材編碼intoC
ADDILISTA.姓名,教師代碼,C.教材編碼;
forleft(教師代碼,2)=“02"3.4臨時關系的應用思考題:請分別用可視化方法、命令方法,用臨時關系實現右圖所示三表之間的邏輯聯接。右圖所示的三表之間的邏輯聯接能否實現?如果能,請寫出命令如果不能,請說明理由?rosterregisterbook教師代碼教材編碼rosterregisterbook教師代碼教材編碼主關鍵字:表中的一列或多列,其中的值唯一地標識了表中的一行;外部關鍵字:一列或多列的組合,列中的值需要與另一個表中的主關鍵字相匹配。用于聯接相關表;定義:通過主關鍵字和外部關鍵字組成的聯接條件,實現的兩個庫表之間的一種鏈接,即“永久關系”,它是兩個庫表中,具有相同從屬關系的數據之間的聯系紐帶。永久關系永久關系
永久關系并不能控制各表內記錄指針間的關系(使用永久關系不能實現在一個表中移動記錄指針,從而改變另一個表中的指針的功能,但是臨時關系可以實現)。適用范圍1.用于參照完整性,控制記錄在相關表中被插入、更新或刪除的方式;2.當在“查詢設計器”或“視圖設計器”中,自動作為默認聯接條件;3.在“數據環境設計器”中,將參考永久關系,自動生成表之間的相應的臨時關系。永久關系特點:這種關系一旦建立,就一直存在于數據庫之中,當打開數據庫時,就開始起作用。擁有永久關系的表必須是庫表。類型:一對一:主表中的每一個記錄只與相關表中的一個記錄相關一對多:主表中的一個記錄與相關表中的多個記錄相關聯注意:主索引、候選索引可作為“一”方,而唯一索引、普通索引可作為“多”方;永久關系表示方法:
用一根連接父表的索引標識到子表的索引標識的連線來表示兩表之間的永久關系。建立方法:
在數據庫設計器中,將父表的主索引標識或候選索引標識左拖到子表的索引標識上。刪除方法:按<Del>、<Backspace>鍵即可刪除;右擊連線,選擇快捷菜單中的“刪除關系”命令;編輯方法:單擊連線,在“數據庫”菜單中,選擇“編輯關系”命令右擊連線,選擇快捷菜單中的“編輯關系”命令定義:通過建立一組規則,并在規則的限制下,制定記錄如何在相關表中被插入、更新或刪除的方式,以確保數據的正確性、相容性和一致性。建立途徑:參照完整性生成器:確定要實施的規則類型、要實施規則的表以及會導致VFP檢查參照完整性規則的系統事件;并將自動生成的代碼作為觸發器保存在存儲過程中。編寫觸發器和存儲過程代碼來實施參照完整性。參照完整性參照完整性—生成器進入方法:方法一:單擊對話框中的“參照完整性”按鈕雙擊連線,進入“編輯關系”對話框方法二:右擊連線,在快捷菜單中選擇“編輯參照完整性”命令方法三:單擊連線,在“數據庫”菜單中選擇“編輯參照完整性”命令設置參照完整性規則
更新規則刪除規則插入規則當父表中的關鍵字值被修改時當父表中記錄被刪除時當在子表中插入或更新記錄時級聯用新的關鍵字值更新子表中的所有相關記錄刪除子表中所有相關記錄限制若子表中有相關記錄則禁止更新若子表中有相關記錄則禁止刪除若父表中不存在匹配的關鍵字值,則禁止插入忽略允許更新,不管子表中的相關記錄允許刪除,不管子表中的相關記錄允許插入參照完整性生成器參照完整性設置完畢,單擊“確定”按鈕,再連續兩次單擊“是”按鈕,確認生成完整性代碼;3.4臨時關系與永久關系的區別臨時關系可發生在自由表之間、庫表之間、自由表與庫表之間;而永久關系只能發生在庫表之間。臨時關系不屬于數據庫;而永久關系屬于數據庫。臨時關系是在需要才建立,且可隨時撤消,并不影響表中的數據;而永久關系建立后,不能隨意撤消,否則,將影響數據的完整性。臨時關系可根據父表記錄指針的移動,而自動控制子表中記錄指針的移動;而永久關系并不控制記錄指針的移動。1.例:
新建一個數據庫ABC,在其中建立如下所示的永久關系
2.在數據庫ABC中,按如下要求建立完整性規則:
(1)
當在BOOK表中刪除記錄時,REGISTER表中的所有記錄自動刪除(2)當更新BOOK表中某除記錄的教材編碼時,REGISTER表中的所有相關記錄也同樣修改(3)當在REGISTER增加新記錄時,BOOK表中必須有相關記錄REGISTERBOOK創建數據庫ABC.DBF,建立它們之間的永久關系設置參照完整性規則利用表單向導創建表單,表單內容有:學號,姓名,專業,生物,化學,計算機,英語,平均分創建數據庫student.dbc,添加student表和score表2.建立兩個表之間的永久關系3.單擊“新建”按鈕,選擇“表單”4.單擊“向導”按鈕,選擇“一對多表單向導”,單擊“確定”5.在“一對多表單向導”的指導下,分別選擇主表的字段:學號,姓名,專業和子表的生物,化學,計算機,英語,平均分6…運行表單.作業:用表單設計器創建具有以上內容的表單jbqk.scx3.5查詢與SQL語言查詢:是從一個數據庫中檢索信息的一個請求,該請求使用一些條件提取特定的記錄,并將這些記錄按要求以集合的形式作為結果返回給用戶。建立查詢的方法SELECT-SQL命令:SELECT-SQL命令是VFP所支持的結構化查詢語言(StructureQueryLanguage—,SQL)中的一條命令;查詢設計器:通過可視化的界面設計“查詢”,并可把“查詢”保存在.QPR文件中;查詢設計器與SELECT–SQL命令的關系查詢設計器實際上是設計一條SELECT–SQL命令的可視化方法;非常重要本節內容是等級考試的重點之一也是本課程的考試重點之一3.5查詢設計器進入查詢設計器的方法可視方法調出“新建”對話框“文件”菜單的“新建”命令“常用”工具欄中的新建按鈕在“新建”對話框中“文件類型”框中,單擊“查詢”。單擊“新建”按鈕,直接進入查詢設計器單擊“向導”按鈕新建查詢命令
CREATE
QUERY
查詢文件名打開查詢命令
MODIFY
QUERY
查詢文件名3.5一個簡單查詢例如:查詢STUDENT表中的所有內容進入查詢設計器為查詢定義數據源STUDENT.DBF在“字段”選項卡中,選擇所有字段運行查詢獲取與該查詢等價的SELECT—SQL命令進入“查詢”窗口(只讀型窗口,顯示等價的SELECT-SQL命令)選擇“查詢”菜單中“查看SQL”命令在查詢設計器的快捷菜單中“查看SQL”命令將窗口中的SELECT命令復制到剪貼板條件的類型條件類型說明=指定字段值等于右邊的實例Like指定字段與實例文本相匹配。(在LIKE后面使用的通配符是%)==指定字段與實例文本必須逐字符完全匹配>(>=)指定字段大于(大于或等于)實例文本的值<(<=)指定字段小于(小于或等于)實例文本的值IsNull指定字段包含null值Between指定字段大于等于示例文本中的低值并小于等于示例文本中的高值。實例文本中的這兩個值用逗號隔開。如,“Between(JS.CSRQ,{01/01/1950},{01/01/1960})”與出生日期在1950年1月1日至1960年1月1日的教師記錄相匹配IN指定字段必須與實例文本中逗號分隔的幾個樣本中的一個相匹配在“條件”列表中,除了常用的關系運算符外,還有:l
Like:意為在字段名框列出的字段值與實例框中給出字段值或樣本值執行不完全匹配,它主要是針對字符類型的。如查詢條件為
Like%王(匹配姓名中最后一個字是王)
LIKE王%(匹配姓名中第一個字是王)
LIKE%王%(匹配姓名中包含王)l
IsNull::指定字段必須包含NULL值。Between(在中間):意為輸出字段的值應大于或等于實例框中的最小值,而小于或等于實例框中的最大值。在實例框中最小值在前,最大值在后,中間以逗號分隔。
IN(在…之中):意為輸出字段的值必須是實例框中給出值中的一個,在實例框給出的各值之間以逗號分隔。
1.查詢student表中女性的七年制和女碩士,可構造如下條件:性別=“女”AND(學制=“七”OR
學制=“碩”)或者:性別=“女”AND學制=“七”OR
性別=“女”AND
學制=“碩”查詢STUDENT表和SCORE表中年齡<22歲,英語成績在85~95之間的記錄2004-year(出生年月)>22and
英語between(85,95)
3.5.2.3查詢記錄的篩選(3)在“實例”列表中輸入比較值,如:臨床醫學(4)若要在搜索字符數據時忽略大小寫,可單擊大小寫下的按鈕。(5)如果希望對邏輯操作符的含義取反,可以選中否按鈕,如查找非“臨床醫學”專業的學生,則應選中該按鈕,則可構造出如下條件表達式:
Student.專業NotLike臨床醫學(6)在“實例”文本框輸入值時,必須注意:除非字符串同查詢中的字段名相同,否則不用把字符串用引號括起來。
(7)日期必須用花括號括起來,如:1980年1月12日應寫為:{^1980//01/12}(8)邏輯值的前后必須使用句點號,如:.T.。
查找滿足多個條件的記錄,可以在“篩選”選項卡中添加多個條件并在“邏輯”列表中選擇他們之間的關系。默認的邏輯關系(無)自動以“與”(AND)的方式組合起來。查找的記錄滿足兩個以上條件中的任意一個,則需用“或”(OR)操作符將這些條件組合起來。3.5查詢的保存將在查詢設計器中設計的查詢保存到一個文件中,將來:可運行、修改等;保存查詢的方法“文件”菜單中“保存”命令“文件”菜單中“另存為”命令注意:查詢文件的保存地點3.5查詢的運行 查詢的運行:實際上就是數據庫發出一條查詢請求,并返回查詢后的結果集??梢暦绞剑哼M入查詢設計器窗口,并:“程序”菜單的“運行”命令“常用”工具欄中的“運行”按鈕命令方式:在命令窗口發布命令:DO
QueryFileName.QPR &&擴展名不能省略注意:必須將在查詢設計器中設計的查詢保存在一個查詢文件中直接在命令窗口發布等價的SELECT–SQL命令3.5查詢的修改在查詢設計器中修改查詢調出“打開”對話框選擇“文件”菜單的“打開”命令單擊“常用”工具欄中的“打開”按鈕在“打開”對話框中“文件類型”框中,選擇“查詢”。選擇所需修改的查詢文件(擴展名.QPR);單擊“確定”按鈕,進入查詢設計器,修改查詢。3.5查詢設計器窗口組成頂部窗格:為查詢指定數據源及多數據源之間的聯接條件字段:從數據源中,指定能出現在結果集中的列(可為字段、表達式(在表達式中,應注意合計函數:COUNT()、SUM()、AVG()、MAX()、MIN()的使用);篩選:指定記錄出現在結果集中的條件;排序依據:指定結果集中的字段或表達式,排序結果集;分組依據:指定數據源中的字段或表達式,用于把表中有相同值的記錄合并為一組,形成一條記錄出現在結果集中;雜項:是否允許結果集中出現重復記錄;還可限制每批次查詢的記錄數(全部記錄、最大數目或百分比);聯接:指定聯接表達式,用它來匹配多個表或視圖中的記錄;3.5查詢設計器—“查詢”菜單添加表:顯示“添加表或視圖”對話框,指定數據源。移去表:從設計器中移去所選定的表。移去聯接條件:移去所選中的表聯接線。輸出字段、聯接、篩選、排序依據、分組依據、雜項查詢去向:顯示“查詢去向”對話框,該對話框允許把查詢結果發送到七個不同的輸出目的地。查看SQL:在只讀的“查詢”窗口中,顯示等價的創建查詢或視圖的SQL語句。運行查詢:執行所建立的SQLSELECT語句,并向所選定的輸出目的地發送結果。快捷鍵:CTRL+Q3.5查詢設計器—快捷菜單右擊窗口,彈出快捷菜單運行查詢:執行所建立的SQLSELECT語句,并向所選定的輸出目的地發送結果。快捷鍵:CTRL+Q查看SQL:在只讀的“查詢”窗口中,顯示等價的創建查詢或視圖的SQL語句。移去表:從設計器中移去所選定的表。添加表:顯示“添加表或視圖”對話框,指定數據源。輸出設置:顯示“查詢去向”對話框,該對話框允許把查詢結果發送到七個不同的輸出目的地。3.5結構化查詢語言定義:是一種數據查詢和編程語言(StructuredQueryLanguage—SQL)。在VFP中,支持結構化查詢語言命令,并以獨特高效的Rushmoretechnology優化技術優化SQL命令的執行,且單個的SQL命令的功能相當于多條VFP命令。SELECT-SQL:查詢UPDATE-SQL:修改記錄DELETE-SQL:邏輯刪除記錄INSERT-SQL:追加記錄ALTERTABLE-SQL:修改表結構CREATECURSOR-SQL:創建臨時表CREATETABLE-SQL:創建表3.5SELECT-SQL命令SELECT[ALL|DISTINCT]
[TOP數值表達式[
PERCENT]]
[表別名.]檢索項[AS
列名
][,[表別名.]檢索項[AS列名
]...]
FROM[數據庫名!]表名[WHERE
連接條件[AND
連接條件...]
[AND|OR
條件表達式[AND|OR
條件表達式...]]]
[GROUPBY列名[,列名...]]
[HAVING條件表達式
]
[UNION[ALL]SELECT
語句] [ORDERBY排序項[ASC|DESC][,
排序項[ASC|DESC]]...] [INTOTABLE|DBF
表名
|CURSOR臨時文件名|ARRAY數組名]
[
TOFILE
文件名
]3.5SELECT-SQL命令說明
—相當于“雜項”選項卡SELECT[ALL|DISTINCT]|[TOP
數值表達式[PERCENT]]ALL:顯示查詢結果中的所有行,缺省值。DISTINCT:
禁止在結果集中出現完全相同的記錄,每個
SELECT命令只能用一次DISTINCT選項。TOP
數值表達式[PERCENT]:指定顯示結果中的若干行,或顯示查詢結果行數的百分比。由數值表達式
確定顯示的行數,百分比由PERCENT參數確定包含TOP子句時必須有ORDERBY
子句??梢灾付?到32767行,在指定的行數內,由ORDERBY子句指定的列如果有相同值,則相同值的那些行也在查詢結果中。3.5SELECT-SQL命令說明
—相當于“字段”選項卡[表別名.]檢索項[AS列名
][,[表別名.]檢索項[AS列名
]…]指定查詢結果的各列,各列的值由檢索項確定,列名由“AS列名”確定。如果有同名的檢索項,通過在各項前加表別名予以區分,檢索項可以是FROM子句中表的字段名、常量、函數表達式。如選擇所有字段,可用“*”代替。FROM[數據庫名!]表名[邏輯別名]:指出包含查詢數據的表名的列表。如果查詢數據來自多張表,則表名用逗號分開,當不同數據庫中的表同名時,在表名前加數據庫名,數據庫名與表名之間用“!”分隔。3.5SELECT-SQL命令說明
—相當于“篩選”選項卡[WHERE
連接條件[AND
連接條件...]
[AND|OR條件表達式
[AND|OR
條件表達式…]]]該子句指明查詢條件,如果缺省則將查詢FROM子句指定表中所有記錄。如果由FROM子句指定多表查詢,則要用WHERE子句指定多表之間的連接條件。OperatorComparisonOperatorComparison=Equal>Morethan==Exactlyequal>=MorethanorequaltoLIKESQLLIKE<Lessthan<>!=
#Notequal<=Lessthanorequalto3.5SELECT-SQL命令說明
—相當
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業行動入口網站與客戶關系管理方案
- 遼寧省瓦房店三中2025年高三4月考-語文試題試卷含解析
- 廣東省深圳市龍崗區達標名校2025屆初三英語試題9月18日第3周測試題含答案
- 珠寶店管理層
- 福建農業職業技術學院《中國古代文明(下)》2023-2024學年第二學期期末試卷
- 湖南省株洲市株洲縣2025年數學五下期末學業質量監測試題含答案
- 廣州城市職業學院《病理生理學理論》2023-2024學年第二學期期末試卷
- 河北省秦皇島市2025年數學五下期末經典模擬試題含答案
- 2025年山東省萊山一中高三畢業班第三次統測數學試題含解析
- 渭南職業技術學院《社會工作論文規范與寫作》2023-2024學年第二學期期末試卷
- 八年級下寫字課
- 入伍簡歷當兵簡歷.doc
- 前列腺癌臨床路徑(最全版)
- 國家旅游局新版團隊出境旅游合同模板
- 管道探傷焊口計算表
- 4S店三表一卡標準模板
- 南京地鐵四號線風井主體結構施工方案
- 高中生物競賽 第九章 染色體畸變課件
- 四年級下冊《小數的意義和性質》整理和復習
- 土壤污染修復技術對比分析
- 3萬高爐轉爐混合煤氣柜技術規程
評論
0/150
提交評論