![第十五章 數(shù)據(jù)訪問部件的應(yīng)用及編程(一)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/d3eb2e7e-c421-4364-b709-b7676dda9e19/d3eb2e7e-c421-4364-b709-b7676dda9e191.gif)
![第十五章 數(shù)據(jù)訪問部件的應(yīng)用及編程(一)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/d3eb2e7e-c421-4364-b709-b7676dda9e19/d3eb2e7e-c421-4364-b709-b7676dda9e192.gif)
![第十五章 數(shù)據(jù)訪問部件的應(yīng)用及編程(一)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/d3eb2e7e-c421-4364-b709-b7676dda9e19/d3eb2e7e-c421-4364-b709-b7676dda9e193.gif)
![第十五章 數(shù)據(jù)訪問部件的應(yīng)用及編程(一)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/d3eb2e7e-c421-4364-b709-b7676dda9e19/d3eb2e7e-c421-4364-b709-b7676dda9e194.gif)
![第十五章 數(shù)據(jù)訪問部件的應(yīng)用及編程(一)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/d3eb2e7e-c421-4364-b709-b7676dda9e19/d3eb2e7e-c421-4364-b709-b7676dda9e195.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、在這一章里我們主要介紹Delphi的數(shù)據(jù)訪問部件的層次結(jié)構(gòu)、多部件之間的關(guān)系、部件的屬性、方法、事件以及各部件的應(yīng)用。這些部件包括: TSession部件 數(shù)據(jù)集部件(TTable和TQuery) TDatasource部件 字段對(duì)象TField 字段編輯器的使用 TReport部件和TBatchMove部件我們對(duì)這些部件的屬性、方法和事件進(jìn)行一般性的描述,讀者在實(shí)際使用Delphi開發(fā)應(yīng)用程序時(shí),還可以通過聯(lián)機(jī)幫助獲得有關(guān)部件更詳細(xì)的信息。15.1 Delphi數(shù)據(jù)訪問部件的層次結(jié)構(gòu) Delphi提供了強(qiáng)大的
2、開發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的能力,它給用戶提供了大量的數(shù)據(jù)訪問部件。以方便程序設(shè)計(jì)人員開發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序。這些部件中,有些部件繼承了另一些部件的屬性、方法和事件,也就是說多部件之間存在著繼承和被繼承的關(guān)系,各部件的這種關(guān)聯(lián)便構(gòu)成了一個(gè)層次結(jié)構(gòu)圖15.1 Delphi數(shù)據(jù)訪問部件的層次結(jié)構(gòu)TSession是全局性的部件,在應(yīng)用程序運(yùn)行時(shí),它自動(dòng)地建立,在設(shè)計(jì)階段和運(yùn)行過程中它是一個(gè)不可見的部件。TDatabase部件是為開發(fā)客戶/服務(wù)器數(shù)據(jù)庫(kù)應(yīng)用程序時(shí),設(shè)置登錄的數(shù)據(jù)庫(kù)的有關(guān)參數(shù)的,它在數(shù)據(jù)訪問部件頁(yè)上。TDataset部件是不可見的,TTable和TQuery部件是由它派生而來的,這兩個(gè)部件一般被稱為
3、數(shù)據(jù)集部件,它們?cè)跀?shù)據(jù)訪問部件頁(yè)上。TDatasource部件是連接數(shù)據(jù)集部件和數(shù)據(jù)瀏覽部件的橋梁,它在數(shù)據(jù)訪問部件頁(yè)上。TFields部件對(duì)應(yīng)于數(shù)據(jù)庫(kù)表中的實(shí)際字段,它既可以在應(yīng)用程序的運(yùn)行過程中動(dòng)態(tài)地生成也可以在程序設(shè)計(jì)階段用字段編輯器創(chuàng)建。它是不可見的部件,在程序中我們可以通過TField部件來訪問數(shù)據(jù)庫(kù)記錄的各個(gè)字段值。15.2 Tsession部件及其應(yīng)用TSession部件一般用得較少,但它對(duì)于一些特殊的應(yīng)用是很有用的,在每一個(gè)數(shù)據(jù)庫(kù)應(yīng)用程序運(yùn)行時(shí)Delphi自動(dòng)地創(chuàng)建一個(gè)TSession部件。程序設(shè)計(jì)人既不能看見該部件也不能顯示地創(chuàng)建一個(gè)TSession 部件,但是我們可以在應(yīng)用
4、程序中全局性地使用TSession部件的屬性、方法。 TSession部件的重要屬性及作用TSession部件的許多重要屬性是用于控制數(shù)據(jù)庫(kù)應(yīng)用程序與數(shù)據(jù)庫(kù)的連接的,在一個(gè)應(yīng)用程序中,可以全局性地設(shè)置TSession的有關(guān)屬性值,對(duì)與之相連接的磁盤上的數(shù)據(jù)庫(kù)進(jìn)行控制。TSession部件主要有下列屬性:Database屬性:是TSession中可以進(jìn)行連接的所有數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)名字列表,這些數(shù)據(jù)庫(kù)的名字常常是實(shí)際數(shù)據(jù)庫(kù)的別名,包括數(shù)據(jù)庫(kù)的路徑、用戶名、用戶登錄口令等參數(shù)。DatabaseCount屬性:是TSession中可以進(jìn)行連接的所有數(shù)據(jù)庫(kù)的數(shù)量,它是一個(gè)整數(shù)。KeepCounnectio
5、ns屬性:是一個(gè)布爾型屬性,用它說明應(yīng)用程序是否保持與一個(gè)非活動(dòng)數(shù)據(jù)庫(kù)的連接。因?yàn)閷?duì)于一個(gè)數(shù)據(jù)庫(kù),當(dāng)該數(shù)據(jù)庫(kù)中沒有相應(yīng)的數(shù)據(jù)集部件(TTable或TQuery)被打開時(shí),該數(shù)據(jù)庫(kù)將自動(dòng)地變成非活動(dòng)的數(shù)據(jù)庫(kù)。缺省情況下,KeePcounnections的值是True,就是說應(yīng)用程序總是保持著與數(shù)據(jù)庫(kù)的連接,即使數(shù)據(jù)庫(kù)變成了非活動(dòng)的數(shù)據(jù)庫(kù)時(shí),也是如此。如果將KeepConnections屬性設(shè)置成False,那么當(dāng)數(shù)據(jù)庫(kù)由活動(dòng)狀態(tài)變成非活動(dòng)狀態(tài)時(shí),應(yīng)用程序與該數(shù)據(jù)庫(kù)的連接也隨之中斷。NetFileDir屬性:說明BDE網(wǎng)絡(luò)控制文件的路徑名。PrivateDir屬性:說明存取臨時(shí)文件的路徑名。 TS
6、ession部件的方法:TSession部件中的大部分方法是用于向用戶提供與應(yīng)用程序相連接的數(shù)據(jù)庫(kù)的信息,如數(shù)據(jù)庫(kù)的名字及別名,數(shù)據(jù)庫(kù)中的表名以及數(shù)據(jù)庫(kù)引擎BDE的有關(guān)參數(shù)等,在設(shè)計(jì)數(shù)據(jù)庫(kù)應(yīng)用程序時(shí),想要獲取有關(guān)數(shù)據(jù)庫(kù)的信息,調(diào)用TSession部件的下列方法,將會(huì)大大簡(jiǎn)化程序的設(shè)計(jì)。GetAliasNames方法:調(diào)用該方法,我們可以獲得數(shù)據(jù)庫(kù)引擎BDE中定義的數(shù)據(jù)庫(kù)別名。GetAliasParams方法:該方法主要用于獲取我們?cè)贐DE中定義數(shù)據(jù)庫(kù)別名時(shí)所說明的參數(shù)值,如BDE所在的目錄路徑以及實(shí)際名稱等。GetDatabaseNames 方法:調(diào)用該方法可以幫助我們獲得當(dāng)前應(yīng)用程序可以進(jìn)行
7、連接的所有數(shù)據(jù)庫(kù)的名字,數(shù)據(jù)庫(kù)的名字是用戶使用BDE工具定義的實(shí)際數(shù)據(jù)庫(kù)的別名。GetDriverNames方法:數(shù)據(jù)庫(kù)引擎BDE可以與多種數(shù)據(jù)庫(kù)管理系統(tǒng)相連接,如客戶/服務(wù)器數(shù)據(jù)庫(kù)管理系統(tǒng)Oracle、Sybase以及本地?cái)?shù)據(jù)庫(kù)管理系統(tǒng)dBASE,Paradox等,BDE與每一種數(shù)據(jù)庫(kù)管理系統(tǒng)進(jìn)行連接時(shí),都有相應(yīng)的驅(qū)動(dòng)程序,而且這些驅(qū)動(dòng)程序都可以選擇地安裝。通過調(diào)用GetDriverNames方法。我們可以獲得當(dāng)前BDE安裝的數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序的名字。GetDriverParams方法:BDE的數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序中包含著多個(gè)參數(shù),如支持的民族語言、DBMS的版本號(hào)、文件塊大小等,對(duì)于服務(wù)器上的DBM
8、S,還有數(shù)據(jù)庫(kù)服務(wù)器的名字等等。GetTableNames方法:因?yàn)槊恳粋€(gè)數(shù)據(jù)庫(kù)都是由多個(gè)數(shù)據(jù)庫(kù)表組成的,我們通過說明數(shù)據(jù)庫(kù)名,然后調(diào)用GetTableNames方法,便可以獲得該數(shù)據(jù)庫(kù)中全部的數(shù)據(jù)庫(kù)表的名字。上述這些方法在調(diào)用時(shí)都需要一個(gè)字符串列表作為參數(shù),而且都返回一個(gè)字符串列表的值。TSession部件還有一個(gè)叫DropConnections的方法用于控制應(yīng)用程序與數(shù)據(jù)庫(kù)的連接,當(dāng)調(diào)用DropConnections方法時(shí),應(yīng)用程序與所有的數(shù)據(jù)庫(kù)的連接將會(huì)切斷。 TSession部件應(yīng)用舉例例15.1:我們創(chuàng)建一個(gè)應(yīng)用程序,通過調(diào)用TSession有關(guān)的方法獲取當(dāng)前應(yīng)用程序可以進(jìn)行連接的數(shù)
9、據(jù)庫(kù)的名字以及獲取其中任意一個(gè)數(shù)據(jù)庫(kù)中的全部數(shù)據(jù)庫(kù)表的名字。通過TSession部件獲取數(shù)據(jù)庫(kù)的有關(guān)信息窗體中主要使用了兩個(gè)列表框,其中列表框DatabaselistBox用于顯示數(shù)據(jù)庫(kù)的名字,列表框TablelistBox用于顯示數(shù)據(jù)庫(kù)中的表名。程序運(yùn)行完后數(shù)據(jù)庫(kù)的名字顯示在DatabaselistBox列表框中,當(dāng)用戶單擊DatabaselistBox列表框中的數(shù)據(jù)庫(kù)名時(shí),該數(shù)據(jù)庫(kù)全部的數(shù)據(jù)庫(kù)表的名字將會(huì)顯示在TablelistBox列表框中。有關(guān)的程序代碼如下:unit unit31;interfaceusesSysUtils, Windows, Messages, Classes, G
10、raphics, Controls,Forms, Dialogs, StdCtrls, DB, DBTables, Buttons, ComCtrls, Tabnotbk;typeTQueryForm = class(TForm)BitBtn1: TBitBtn;DataSource1: TDataSource;Table1: TTable;GroupBox1: TGroupBox;CheckBox1: TCheckBox;CheckBox2: TCheckBox;PageControl1: TPageControl;TabSheet1: TTabSheet;Label1: TLabel;La
11、bel2: TLabel;Label3: TLabel;ListBox1: TListBox;ListBox2: TListBox;ListBox3: TListBox;TabSheet2: TTabSheet;Memo1: TMemo;procedure FormCreate(Sender: TObject);procedure ListBox1Click(Sender: TObject);procedure ListBox2Click(Sender: TObject);end;varQueryForm: TQueryForm;implementation$R *.DFMuses RSLTF
12、ORM;procedure TQueryForm.FormCreate(Sender: TObject);beginScreen.Cursor := crHourglass; Populate the alias list with ListBox1 dobeginItems.Clear;Session.GetAliasNames(Items);end; Make sure there are aliases defined Screen.Cursor := crDefault;if ListBox1.Items.Count < 1 thenMessageDlg( 'There
13、are no database aliases currently defined. You ' +'need at least one alias to use this demonstration.',mtError, mbOK, 0 );end;procedure TQueryForm.ListBox1Click(Sender: TObject);varstrValue: string; Holds the alias selected by the user bIsLocal: Boolean; Indicates whether or not an alias
14、 is local slParams: TStringList; Holds the parameters of the selected alias iCounter: Integer; An integer counter variable for loopsbegin Determine the alias name selected by the user with ListBox1 dostrValue := Items.StringsItemIndex; Get the names of the tables in the alias and put them in theappr
15、opriate list box, making sure the user's choices are reflectedin the list. ListBox2.Items.Clear;Session.GetTableNames(strValue, alias to enumerate '', pattern to match 數(shù)據(jù)集中的數(shù)據(jù)維護(hù)數(shù)據(jù)集中的數(shù)據(jù)維護(hù)主要包括數(shù)據(jù)記錄的修改,插入和刪除。Delphi為數(shù)據(jù)集部件提供了相應(yīng)的方法用于其中的數(shù)據(jù)維護(hù)。這些方法如表15.所示。表15.3 Delphi用于數(shù)據(jù)維護(hù)的方法方 法 名 功 能Edit 將數(shù)據(jù)集置為編
16、輯狀態(tài)Append 投寄所有被修改的記錄,將記錄指針移到表中的最后一條記錄,且將數(shù)據(jù)集置為插入狀態(tài)Insert 投寄所有被修改的記錄將數(shù)據(jù)集置為插入狀態(tài)Post 將插入的新記錄和修改的記錄寫回磁盤上的數(shù)據(jù)庫(kù)表,即投寄,當(dāng)投寄成功時(shí)數(shù)據(jù)集回到瀏覽狀態(tài),若投寄不成功數(shù)據(jù)集仍然保持原有狀態(tài)Cancel 取消當(dāng)前的操作且將數(shù)據(jù)集置為瀏覽狀態(tài)Delete 刪除當(dāng)前記錄指針?biāo)诘挠涗浨覍?shù)據(jù)集置為瀏覽狀態(tài)AppendRecord 在表的最后插入一條新記錄,記錄的各個(gè)字段值作為AppendRecord的參數(shù)傳遞給新記錄InsertRecord 在當(dāng)前指針?biāo)谟涗浀暮竺娌迦胍粭l新記錄, 記錄的各個(gè)字段值作為I
17、nsertRecord的參數(shù)傳遞給新記錄。SetRecords 修改當(dāng)前記錄,字段名和相應(yīng)的字段值作為SetRecords的參數(shù)Edt方法:如果應(yīng)用程序想對(duì)數(shù)據(jù)集中的數(shù)據(jù)記錄進(jìn)行修改,我們必須要將數(shù)據(jù)集設(shè)置成編輯狀態(tài)。調(diào)用數(shù)據(jù)集部件的Edit方法便可以將數(shù)據(jù)集置成編輯狀態(tài),當(dāng)數(shù)據(jù)集已經(jīng)處在編輯狀態(tài)時(shí),調(diào)用Edit方法不會(huì)產(chǎn)生作用。當(dāng)數(shù)據(jù)集處于編輯狀態(tài)時(shí),移動(dòng)記錄指針或調(diào)用post方法都可以將當(dāng)前記錄的修改寫回到磁盤數(shù)據(jù)庫(kù)表中。在程序中, Edit方法和post方法常常配合在一起使用,用于修改表中的記錄。如:Table1.Edit;Tabel1.FieldByName('CustNo
18、39;).Asstring := '1234'Table1.st;在上述這一段程序代碼中,第一行程序是將Table1置成編輯狀態(tài),第二行程序是對(duì)當(dāng)前記錄指針?biāo)诘挠涗浀腃ustNo字段的值修改成'1234',第二行程序是調(diào)用post方法將對(duì)當(dāng)前記錄的修改寫回?cái)?shù)據(jù)庫(kù)表。Append方法和Insert 方法:這兩個(gè)方法都是將數(shù)據(jù)集部件置成插入狀態(tài),以在表中插入新記錄,Insert方法是在當(dāng)前指針位置的記錄后面插入一打新記錄,Append方法是在表的尾部插入一打新記錄,不過這要注意,無論用戶是調(diào)用Insert方法還是Append方法插入新記錄,增加記錄到一個(gè)具有索引的
19、表中時(shí),都是按照索引順序?qū)懭肫湮恢茫簿褪钦f對(duì)于索引表格Insert方法和Append方法的作用是一樣的,Append僅適用于沒有索引的表。Insert方法和Append方法實(shí)際上是將數(shù)據(jù)集置成插入狀態(tài),并且插入一條空白記錄,要真正插入一條新記錄,我們必須在調(diào)用Insert或Append方法之后,還要給新記錄的各個(gè)字段賦值,最后調(diào)用post方法,將插入的記錄寫回?cái)?shù)據(jù)庫(kù)表。調(diào)用這兩種方法插入新記錄的一般步驟如下:With tabe1 DOBeginInsert; 調(diào)用Insert方法,插入一條空記錄為記錄的各字段賦值Post;End;Post方法:數(shù)據(jù)集中的記錄被修改或插入新記錄時(shí)調(diào)用post方
20、法將數(shù)據(jù)集的修改寫回到數(shù)據(jù)庫(kù)表。根據(jù)數(shù)據(jù)集所處的狀態(tài)不同,post方法所產(chǎn)生的作用和效果是不一樣的: 當(dāng)數(shù)據(jù)集處于編輯狀態(tài)時(shí),調(diào)用post方法,將當(dāng)前記錄的修改寫回?cái)?shù)據(jù)庫(kù)表 當(dāng)數(shù)據(jù)集處于插入狀態(tài)時(shí),調(diào)用post方法,將插入的新記錄寫回?cái)?shù)據(jù)庫(kù)表 當(dāng)數(shù)據(jù)集處于SetKey狀態(tài)時(shí),調(diào)用post方法,將數(shù)據(jù)集置成瀏覽狀態(tài)(Browse狀態(tài))post方法的調(diào)用既可以顯式地調(diào)用,也可以隱含地調(diào)用,當(dāng)數(shù)據(jù)集處于編輯狀態(tài)或插入狀態(tài)時(shí),當(dāng)移動(dòng)記錄指針時(shí),Delphi會(huì)隱含地調(diào)用post方法,將將當(dāng)前記錄的修改寫回?cái)?shù)據(jù)庫(kù)表,在程序調(diào)用Insert方法或Append方法時(shí),也會(huì)隱含地調(diào)用Post方法,將先前的數(shù)據(jù)集
21、的修改寫回?cái)?shù)據(jù)庫(kù)表。Delete方法:Delete方法用于刪除表中的記錄,調(diào)用Delete方法時(shí),將會(huì)刪除表中當(dāng)前的記錄,并且自動(dòng)地將記錄指針移到被刪記錄的下一條記錄,同時(shí)將數(shù)據(jù)集置成Browse狀態(tài)。Cancel方法:Cancel方法用于取消當(dāng)前的操作,當(dāng)程序還沒有調(diào)用Post方法,將對(duì)記錄的修改寫回?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方法相似。它們都是用于在表中插入一條新記錄,但Appe
22、ndRecord方法和InsertRecord方法比Append和Insert方法更簡(jiǎn)單更方便一些,它們直接在表中插入一條新記錄,新記錄的各個(gè)字段值作為AppendRecord或InsertRecord方法的參數(shù)傳遞給新記錄并且不需顯式地調(diào)用post方法,將插入的新記錄寫回?cái)?shù)據(jù)庫(kù)表。在給插入的新記錄賦字段值時(shí),將由多個(gè)字段值組成的數(shù)組作為AppendRecord或InsertRecord的參數(shù),在字段值數(shù)組中可以為每一個(gè)字段提供一個(gè)值,或從左邊一列開始依次為任意多個(gè)字段賦值。也就是說,用戶可以從數(shù)據(jù)庫(kù)表的最左一列起,把許多列的值同時(shí)傳遞給InsertRecord,直到所有的字段被賦值,用戶也可
23、以省略字段序列后面的的一些字段值,InsertRecord會(huì)用空值來填充這些字段:用戶也可以對(duì)那些明確希望用空填充的字段傳遞保留字NIl。例如:如果表Country有Name,Captial,Continent,Area和Population字段,并且數(shù)據(jù)集部件Table1與它相連,下面的代碼便可以在Country表中當(dāng)前記錄的后面插入一條新記錄。Table1.InsertRecord ("中國(guó)","北京","五洲");在上述代碼中沒有為Area和population字段賦值,InsertRecord會(huì)用空值來填這兩個(gè)字段。SetRe
24、cords方法:調(diào)用該方法可以修改表中當(dāng)前記錄的多個(gè)字段的值,調(diào)用該方法之前必須將數(shù)據(jù)集部件置成編輯狀態(tài),調(diào)用該方法之后,還要調(diào)用post方法,才能真正將當(dāng)前記錄的修改寫回?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字段沒有
25、修改。在數(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 thenAbort; 取消刪除操作關(guān)于書簽(BookMark)操作;書簽操作主要用于在
26、表中快速地定位記錄指針,在應(yīng)用程序中常常要保存記錄指針?biāo)诘奈恢?,在進(jìn)行其他處理之后,希望能快速地返回到先前指針?biāo)诘奈恢茫藭r(shí),使用書簽將顯得特別有用。有關(guān)書簽操作,Delphi提供了三個(gè)方法,它們是: GetBookMark GotoBookMark FreeBokMark這三個(gè)方法一般都是在一起使用,GetBookMark方法返回一個(gè)TBookMark類型的變量,該變量包含著指向當(dāng)前記錄的指針,GotoMark方法用于快速地將記錄指針定位到具有書簽的記錄處。FreeBookmark方法是與GetBookMark方法相反的操作,它釋放書簽標(biāo)志。下面的程序代碼闡述了書簽操作的一般方法:BookMark : TBookMark;<Do something>BookMark := Table
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人電車租車合同范本
- 公司民間借款合同范本
- 辦公裝修協(xié)議合同范例
- 公路養(yǎng)護(hù)補(bǔ)充協(xié)議合同范本
- 二手車銷售中心合同范本
- 健身俱樂部就業(yè)合同范本
- 勞務(wù)薪酬合同范例
- 2025年度家庭寵物養(yǎng)護(hù)保姆服務(wù)合同
- 公司如資金合同范本
- 兼職勞務(wù)合同范本乙方
- 現(xiàn)金盤點(diǎn)表完整版
- 病例展示(皮膚科)
- GB/T 39750-2021光伏發(fā)電系統(tǒng)直流電弧保護(hù)技術(shù)要求
- 教科版五年級(jí)科學(xué)下冊(cè)【全冊(cè)全套】課件
- 糖尿病運(yùn)動(dòng)指導(dǎo)課件
- 完整版金屬學(xué)與熱處理課件
- T∕CSTM 00640-2022 烤爐用耐高溫粉末涂料
- 304不銹鋼管材質(zhì)證明書
- 民用機(jī)場(chǎng)不停航施工安全管理措施
- 港口集裝箱物流系統(tǒng)建模與仿真技術(shù)研究-教學(xué)平臺(tái)課件
- 新教科版2022年五年級(jí)科學(xué)下冊(cè)第2單元《船的研究》全部PPT課件(共7節(jié))
評(píng)論
0/150
提交評(píng)論