版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、摘 要隨著當(dāng)今世界計算機技術(shù)的飛速發(fā)展,計算機在企業(yè)管理中應(yīng)用的普及,利用計算機實現(xiàn)企業(yè)進銷存管理勢在必行。本系統(tǒng)結(jié)合公司實際的進銷存制度,通過對本公司的供應(yīng)商、顧客、商品、進貨、銷售、代銷等信息的管理,從而達到進貨、銷售和庫存的全面信息管理。經(jīng)過實際的需求分析,采用了Microsoft的Visual FoxPro6.0作為開發(fā)工具而開發(fā)出來的企業(yè)進銷存管理系統(tǒng)。整個系統(tǒng)從符合操作簡便、界面友好、靈活、實用、安全的要求出發(fā),完成進貨、銷售、庫存管理的全過程,包括操作員的增添與修改,進貨、銷售商品的錄入、統(tǒng)計與查詢,以及庫存的統(tǒng)計等。經(jīng)過實際使用證明,本文所設(shè)計的企業(yè)進銷存管理系統(tǒng)可以滿足企業(yè)進
2、貨、銷售管理方面的需要。論文主要介紹了本課題的開發(fā)背景,所要完成的功能和開發(fā)的過程。重點的說明了系統(tǒng)設(shè)計的重點、設(shè)計思想、難點技術(shù)和解決方案【關(guān)鍵字】進貨管理, 銷售管理, 庫存管理, delphi, sql server 2000數(shù)據(jù)庫目 錄第一章 數(shù)據(jù)庫基礎(chǔ)3 1.1數(shù)據(jù)庫基礎(chǔ)知識3 1.2數(shù)據(jù)庫開發(fā)的基本步驟6第二章 訪問visual basic數(shù)據(jù)庫8 2.1 ADO的對象模型8 2.1基本數(shù)據(jù)庫管理9第三章 數(shù)據(jù)庫開發(fā)16 3.1數(shù)據(jù)庫的設(shè)計16 3.2系統(tǒng)功能設(shè)計20 3.3創(chuàng)建庫存盤點窗口23 3.4創(chuàng)建產(chǎn)品管理窗口24 3.5創(chuàng)建庫存查詢窗口27 3.6實現(xiàn)退出功能29第四章
3、系統(tǒng)的改進與擴展29參考文獻29第一章 數(shù)據(jù)庫基礎(chǔ)1.1 數(shù)據(jù)庫基礎(chǔ)知識 進行VISUAL BASIC數(shù)據(jù)庫開發(fā),首先要了解與之相關(guān)的數(shù)據(jù)庫基本知識,這樣進行項目開發(fā)就有了切入點。1.1.1 數(shù)據(jù)庫的基本概念 數(shù)據(jù)庫技術(shù)的內(nèi)涵,包括4個緊密相關(guān)的概念:數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)。 這里指的數(shù)據(jù)并不是日常講到的狹義的數(shù)字。我們定義的數(shù)據(jù)是描述事物的符號記錄。它既包括平時所講的數(shù)字,還包括文字、影音、圖形等形式。 我們所說的數(shù)據(jù)庫是指長期存儲在計算機內(nèi)、有組織的、可共享的數(shù)據(jù)的集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的時間模型組織、描述和存儲,具有較小的冗余度,較高的數(shù)據(jù)獨立性和易擴展性,并可為各
4、種用戶所共享。 數(shù)據(jù)管理系統(tǒng)(DBMS)是一個軟件系統(tǒng)。它負(fù)責(zé)將收集并抽取的大量的數(shù)據(jù)進行科學(xué)的組織,并將其存儲在數(shù)據(jù)庫中,高效地進行處理。它是數(shù)據(jù)庫管理系統(tǒng)的核心,是為數(shù)據(jù)庫的建立、使用和維護而配置的軟件。它建立在操作系統(tǒng)的基礎(chǔ)上,是位于操作系統(tǒng)和用戶之間的一層數(shù)據(jù)管理軟件,負(fù)責(zé)對數(shù)據(jù)庫進行統(tǒng)一的管理和控制。用戶發(fā)出的或應(yīng)用程序中的各種操作數(shù)據(jù)庫的數(shù)據(jù)命令,都要通過數(shù)據(jù)庫管理系統(tǒng)來執(zhí)行。數(shù)據(jù)庫管理系統(tǒng)還承擔(dān)著數(shù)據(jù)庫的維護工作,能夠按照數(shù)據(jù)庫管理員規(guī)定的要求,保證數(shù)據(jù)庫的安全性和完整性。其在計算機系統(tǒng)中的地位如圖1-1所示。數(shù)據(jù)庫系統(tǒng)是將計算機引入數(shù)據(jù)庫系統(tǒng)而構(gòu)成的。一般由數(shù)據(jù)庫、數(shù)據(jù)庫管理系
5、統(tǒng)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成。我們所要講的數(shù)據(jù)庫就是數(shù)據(jù)庫系統(tǒng)的簡稱,這也在一方面證明了計算機在數(shù)據(jù)庫技術(shù)中舉足輕重的作用。數(shù)據(jù)庫管理應(yīng)用系統(tǒng)層應(yīng)用開發(fā)工具軟件層翻譯系統(tǒng)層硬件層 圖1-1 數(shù)據(jù)庫管理系統(tǒng)1.1.2 關(guān)系數(shù)據(jù)庫 計算機不可能直接處理現(xiàn)實中的具體事物,所以必須通過人將現(xiàn)實中的具體事物轉(zhuǎn)換成計算機可以處理的事件信息,這就用到了數(shù)據(jù)模型。 數(shù)據(jù)模型主要包括3種常用的模型,即網(wǎng)絡(luò)模型、層次模型和關(guān)系模型。網(wǎng)絡(luò)模型和層次模型又稱為非關(guān)系模型。雖然非關(guān)系模型在現(xiàn)在還有一定的應(yīng)用,但關(guān)系模型數(shù)據(jù)庫應(yīng)用越來越廣泛?,F(xiàn)在幾乎所有的數(shù)據(jù)庫管理系統(tǒng)都支持關(guān)系模型,非關(guān)系系統(tǒng)的產(chǎn)品也大都加上了
6、關(guān)系接口。1、關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)表如表1-1所示。一個關(guān)系數(shù)據(jù)模型的邏輯結(jié)構(gòu)就是一張二維表,由若干行和列組成。根據(jù)上面的表格來分析一下它的主要組成。元組(記錄):表中的一行就是一個元組,即一個記錄。屬性:表中的一列就是一個屬性。像在表1-1中,就有學(xué)號、姓名、所在班級、籍貫和年齡5個屬性。表1-1 關(guān)系數(shù)據(jù)庫學(xué)號姓名所在班級籍貫?zāi)挲g1001李列01山西221002張三02河北231030王星05上海21l 主碼(關(guān)鍵字):表中的一個屬性可以確定惟一的一個元組。即通過這個屬性可以找到惟一的元組。如表1-1中,姓名、籍貫、年齡均可以相同,但學(xué)號惟一,學(xué)號就是主碼。l 域:屬性的取
7、值范圍。如所在學(xué)院的域就是學(xué)校有的院系,籍貫的域是中國的省市。l 分量:元組中一個屬性值。如重慶即是主碼為12004元組中的一個分量。l 關(guān)系模式:對關(guān)系的描述。表示為關(guān)系名(屬性1,屬性2,屬性3,屬性N)表1-1的關(guān)系就可以描述如下:學(xué)生(學(xué)號,姓名,班級,籍貫,年齡)要注意的是,關(guān)系模型要求關(guān)系必須是規(guī)范化的,即要求關(guān)系模式必須滿足一定的規(guī)范條件,這些規(guī)范條件中最為基本的一條就是關(guān)系的每一個分量必須是一個不可分割的數(shù)據(jù)項,也就是說表中不可以再有表。2、關(guān)系數(shù)據(jù)模型的操作與完整約束關(guān)系的完整性約束條件包括3大類,即實體完整性、參照完整性和用戶定義的完整性。在滿足關(guān)系的完整性約束的前提下,可
8、以對關(guān)系數(shù)據(jù)模型進行操作。操作包括查詢、插入、修改、更新等。關(guān)系數(shù)據(jù)模型作為當(dāng)前的一種主流的數(shù)據(jù)模型,其優(yōu)點主要有:l 與非關(guān)系模型不同,它是建立在嚴(yán)格的數(shù)學(xué)概念的基礎(chǔ)之上的。l 關(guān)系模型的概念單一。無論實體不是實體之間的聯(lián)系都用關(guān)系來表示。對數(shù)據(jù)的檢索結(jié)果也是關(guān)系(即表)。所以,數(shù)據(jù)結(jié)構(gòu)簡單、清晰,用戶易掌握。l 關(guān)系模型的存取路徑對用戶透明。當(dāng)然,關(guān)系數(shù)據(jù)模型也不可避免地有缺點存在,如在開發(fā)數(shù)據(jù)庫管理系統(tǒng)時必須對用戶的查詢進行優(yōu)化等。1.1.3 ER圖 建模最常用的方法就是“實體聯(lián)系”實體(entity-relationship approach),兩個實體型之間的聯(lián)系可分為3類:l 一對
9、一聯(lián)系l 一對多聯(lián)系l 多對多聯(lián)系 可以用圖形來表示實體型之間的聯(lián)系,如圖1-2所示。實體模型A實體模型A實體模型A 1 1 m聯(lián)系聯(lián)系聯(lián)系1 n n實體模型B實體模型B實體模型B圖1-2 兩個實體之間的聯(lián)系1、ER圖概念實體聯(lián)系模型簡稱ER圖。它是描述概念世界,建立概念模型的實用工具。ER圖包括以下3個要素:l 實體型用矩形框表示,框內(nèi)標(biāo)注實體名稱。l 屬性用橢圓形表示,并用連線與實體連接起來。l 聯(lián)系用菱形表示,框內(nèi)標(biāo)注聯(lián)系名稱,并用連線將菱形框分別與有關(guān)實體相連,并在邊線上注明聯(lián)系類型。如果聯(lián)系具有屬性,則這些屬性也要用無向邊與該項連接起來。ER圖設(shè)計過程實際是對數(shù)據(jù)進行歸納、分析,把企
10、業(yè)的全部用戶按他們對數(shù)據(jù)和功能需求進行分組。然后從局部入手,對每一類用戶,建立局部ER模型,再綜合成總體ER模型。2、設(shè)計局部ER圖(1) 確定實體和屬性。(2) 確定聯(lián)系類型。依據(jù)需求分析結(jié)果,考查任意兩個實體類型之間是否存在聯(lián)系,若有聯(lián)系,要進一步確定聯(lián)系的類型(1:1,1:M,N:M)。在確定聯(lián)系時應(yīng)特別注意兩點:一是不要丟掉聯(lián)系的屬性;二是盡量取消冗余的聯(lián)系,即取消可以從其他聯(lián)系導(dǎo)出的聯(lián)系。(3) 畫出局部ER圖。3、綜合成ER圖(1)局部ER圖的合并。為了減小合并工作的復(fù)雜性,先兩兩合并。合并從公共實體類型開始,最后再加入獨立的局部結(jié)構(gòu)。(2)消除沖突。一般有3種類型的沖突,即屬性沖
11、突、命名沖突、結(jié)構(gòu)沖突。具體調(diào)整手段可以考慮以下幾種:l 對同一個實體的屬性取各個分ER圖相同實體屬性的并集;l 根據(jù)綜合應(yīng)用的需要,把屬性轉(zhuǎn)變?yōu)閷嶓w,或者把實體變?yōu)閷傩?;l 實體聯(lián)系要根據(jù)應(yīng)用語義進行綜合調(diào)整。4、用ER圖來設(shè)計學(xué)生選課概念模型實例 學(xué)生有學(xué)號、姓名、性別、年齡、系別屬性;課程有課程號、課程名稱、學(xué)分屬性。 學(xué)生和課程之間有選擇課關(guān)系,該關(guān)系是一個多對多的關(guān)系。 學(xué)生關(guān)系ER圖如圖1-3所示。學(xué) 生學(xué) 號性 別姓 名班 級年 齡圖1-3 學(xué)生關(guān)系E-R圖1.2 數(shù)據(jù)庫開發(fā)的基本步驟 數(shù)據(jù)庫技術(shù)作為當(dāng)前一項衡量國家信息化程度的標(biāo)準(zhǔn)被大力推行,尤其在我國信息化剛剛赴的階段,數(shù)據(jù)庫
12、更是被大力發(fā)展。目前在我國從事信息事業(yè)的人員中有70%的人員從事著與數(shù)據(jù)庫相關(guān)的工作。由此可見數(shù)據(jù)庫在我國的發(fā)展前景。 數(shù)據(jù)庫是集數(shù)據(jù)庫基本知識和數(shù)據(jù)庫設(shè)計技術(shù)、計算機基礎(chǔ)知識和程度設(shè)計方法、軟件工程的原理和方法及應(yīng)用領(lǐng)域的知識為一身的一項綜合的學(xué)科,涉及了多學(xué)科、多領(lǐng)域。計算機在其中只是作為工具出現(xiàn)的,這在一定程度上使得科學(xué)地設(shè)計數(shù)據(jù)庫與實現(xiàn)數(shù)據(jù)庫及其應(yīng)用成為了日益引人注目的課題。 從全局出發(fā),數(shù)據(jù)庫的開發(fā)過程分為以下6個階段:(1) 需求分析;(2) 概念結(jié)構(gòu)設(shè)計;(3) 邏輯結(jié)構(gòu)設(shè)計;(4) 物理結(jié)構(gòu)設(shè)計;(5) 數(shù)據(jù)庫實施;(6) 數(shù)據(jù)庫運行和維護。下面就分別簡要介紹各個部分的基本工作
13、和其作用,使讀者對數(shù)據(jù)庫的開發(fā)有一個整體的把握。1. 需要分析階段進行數(shù)據(jù)庫設(shè)計首先必須準(zhǔn)確了解與分析用戶的需求(包括數(shù)據(jù)與處理)。對于初學(xué)者來講,可能認(rèn)為數(shù)據(jù)庫就是用語言來編程,在計算機上編程是數(shù)據(jù)庫設(shè)計的關(guān)鍵。其實不然,需求分析才是整個設(shè)計過程的基礎(chǔ),是最困難、最耗費時間的一步。它是數(shù)據(jù)庫開發(fā)的基礎(chǔ),這方面工作的充分與否決定了在構(gòu)造上的構(gòu)造速度與質(zhì)量。需求分析做得不好,甚至?xí)?dǎo)致后續(xù)工作無法進行而使整個數(shù)據(jù)庫設(shè)計失敗。2. 概念結(jié)構(gòu)設(shè)計階段概念結(jié)構(gòu)設(shè)計是整個數(shù)據(jù)庫設(shè)計的又一個關(guān)鍵,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。3. 邏輯結(jié)構(gòu)設(shè)計階段邏輯結(jié)構(gòu)設(shè)計
14、是將概念結(jié)構(gòu)轉(zhuǎn)換為DBMS所支持的數(shù)據(jù)模型,并對其進行優(yōu)化。4. 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計階段數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計是為邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)和存儲方法)。5. 數(shù)據(jù)庫實施階段在數(shù)據(jù)庫實施階段,設(shè)計人員運用DBMS提供的數(shù)據(jù)語言及其宿主語言,依據(jù)邏輯設(shè)計和物理設(shè)計的結(jié)果建立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)庫,并進行試運行。6. 數(shù)據(jù)庫運行的維護階段數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運行后即可投入正式運行。在數(shù)據(jù)庫系統(tǒng)運行過程中必須不斷地對其進行評價、修改和調(diào)整。第二章 訪問visual basic數(shù)據(jù)庫常見的訪問數(shù)據(jù)庫的方法有使用ADO、DAO、RDO控件等。目前,由于ADO具
15、有靈活而又有效的訪問數(shù)據(jù)庫的方式,故成為比較常用的訪問數(shù)據(jù)庫的方法和手段。 在visual basic與數(shù)據(jù)庫連接后,就可以使用數(shù)據(jù)庫查詢語言SQL對數(shù)據(jù)庫進行增加、刪除、查詢等操作了。2.1 ADO的對象模型ACTIVE DATA OBJECTS,簡稱ADO,是微軟軟件體系中處理關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫的常用技術(shù),ADO技術(shù)方式是DAO和RDO方式的繼承者。ADO的對象模型如圖2-1所示,它可以輕松地實現(xiàn)本地和遠(yuǎn)程數(shù)據(jù)庫的訪問過程,并且可以把數(shù)據(jù)對象綁定到指定的內(nèi)置控件和ACTIVEX控件上,創(chuàng)建DHTML應(yīng)用程序等。connectionerrorsrecordsetcommanderror
16、parametersfieldsparameterfield 圖2-1 ADO的對象模型 從圖2-1中可以看出,ADO中對象的組成一共有3個,它們是ADO頂層的對象,具體的功能如表2-1所示。表2-1 ADO頂層對象功能 對象名稱功能Connection連接數(shù)據(jù)庫的對象,指定對象的數(shù)據(jù)源,建立數(shù)據(jù)庫的連接Command操作數(shù)據(jù)庫的指令,可以接收SQL指令、表的操作指令和存儲過程的指令,一般用來執(zhí)行SQL查詢,增加、刪除和在線更新數(shù)據(jù)recordset得到表中的結(jié)果或者COMMAND操作后的結(jié)果,通常是一個表或者是幾個記錄的集合 總而言之,ADO技術(shù)在實際的應(yīng)用中有如下的很多優(yōu)點:(1) 毫不費
17、力地定位記錄,并使用過濾器和書簽;(2) 提供排序、自動分頁和持久性等功能,并能在與數(shù)據(jù)源斷開時工作;(3) 可在多層之間相當(dāng)高效地匯集記錄集,不過只有COM對象才能使用ADO記錄集。2.2 基本數(shù)據(jù)庫管理 SQL的英文全稱是STRUCTURE QUERY LANGUAGE,即結(jié)構(gòu)化查詢語言。作為一種數(shù)據(jù)庫的查詢和編程語言,它可以對數(shù)據(jù)庫中的數(shù)據(jù)進行組織、管理和檢索。它集數(shù)據(jù)查詢(DATA QUERY)、數(shù)據(jù)操縱(DATA MANIPULATION)、數(shù)據(jù)定義(DATA DEFINIITION)和數(shù)據(jù)控制(DATA CONTROL)等功能于一言已經(jīng)為廣大的用戶所接受,成為一種通用的數(shù)據(jù)庫語言。
18、 針對數(shù)據(jù)庫的基本管理進行分析,基本數(shù)據(jù)庫管理包括表管理、記錄管理、索引管理和視圖管理。 下面分別介紹與SQL語言有關(guān)的技術(shù),并用VISUAL BASIC.NET實現(xiàn)這些技術(shù)。2.2.1 自制的實現(xiàn)工具 對于數(shù)據(jù)庫的實現(xiàn),VISUAL BASIC.NET可以有多種方法。比如用VISUAL BASIC.NET中自帶的查詢工具。這里用到的是我們自己制作的一個小程序,程序雖小,但是功能還是比較全的。它可以實現(xiàn)基本數(shù)據(jù)庫管理的諸多操作,也可以豐富大家的編程經(jīng)驗。 下面介紹它的制作方法。1. 界面設(shè)計 首先向窗體中添加以下控件: BUTTON控件 COMBOBOX控件 TEXTBOX控件 LABEL控件
19、 向COMBOBOX控件中添加項目,單擊屬性對話框的ITEMS屬性后面的 ,顯示添加對話框,并添加幾個ITEM。 這里所添加的項目都是后面要講到的。修改其他控件的屬性,如表2-2所示。 表2-2控件屬性控件名稱屬性屬性值Formtext“SQL語言的基本操作”AcceptbuttonCndgoTextboxText(空)NameTxtsqlcomLabelText“現(xiàn)已成功地連接到數(shù)據(jù)庫,您可以使用SQL語句了”ComboboxNameCmbtypebuttonNameCmdgoText“執(zhí)行” 技巧: 每個窗體都有一個ACCEPTBUTTON和一個CANCELBUTTON。執(zhí)行時,按ENTE
20、R鍵可以自動觸發(fā)ACCEPTBUTTON,按ESC鍵可以自動觸發(fā)CANCELBUTTON。2. 代碼實現(xiàn) 下面添加代碼。(1)引入名稱空間。Imports system.data.oledb(2)在類中定義與數(shù)據(jù)庫的連接。Private conn as new oledbconnection()(3)建立數(shù)據(jù)庫連接。將LABEL控件的TEXT屬性設(shè)置為“現(xiàn)已成功地連接到數(shù)據(jù)庫,您可以使用SQL語句了”。之所以這樣設(shè)置,是因為打算在窗體一經(jīng)顯示就已經(jīng)連接到了數(shù)據(jù)庫上。出于這個目的,將連接數(shù)據(jù)庫的任務(wù)交給了form_load事件。 在事件中添加代碼:Private sub form1_load(b
21、y val sender as system.object, by val e as system.eventargs) Handles_my base.load連接到數(shù)據(jù)庫Conn.connectionstring=_ “provider=Microsoft.jet.oledb.4.0;daga source=sql test.mdb”為combobox設(shè)定初始狀態(tài)Cmb type.selectedindex=0為文本框設(shè)定初始狀態(tài)Txtsqlcom.text=”create table<表名>(<列名><數(shù)據(jù)類型>約束條件, )” End sub說明:運
22、行這個程序要求先在同級目錄下建立一個數(shù)據(jù)庫,名字為SQLTEST.MDB。(4)實現(xiàn)TEXTBOX中的內(nèi)容與COMBOBOX中的內(nèi)容的隨機變化。這個功能是在事件cmbtype_selectedindexchanged中實現(xiàn)的。實現(xiàn)的代碼如下:Private sub cmbtype_selectedindexchanged(by val sender as system.object,By val e as_system.eventargs)handles cmbtype.selectedindexchanged With txtsqlcom Select case cmbtype.select
23、edindexCase 0 建立新的表 .text=”create table<表名>(<列名><數(shù)據(jù)類型>約束條件)”Case 1 對表進行修改 .text=”alter table<表名>add<新列名><數(shù)據(jù)類型>完整性約束drop<完整性約束名>modify<列名><數(shù)據(jù)類型>” Case 2 刪除基本表 .text=”drop table<表名>” Case 3 添加新的記錄 .text=”insert into<表名>(屬性列,)values(常量,)
24、” Case 4 更新數(shù)據(jù) .text=”update<表名>set<列名>=<表達式>,where 條件” Case 5 刪除記錄 .text=”delete from<表名>where 條件” Case 6 新建索引 .text=”create uniquecluster index<索引名>on<表名>(<列名><次序>,)” Case 7 刪除索引 .text=”drop index<.索引名>on<表名>” 注意:在SQL的標(biāo)準(zhǔn)語法中,刪除索引為DROP INDEX
25、<索引名> 但在ODBC中,語法如上 Case 8 新建一個視圖 .text=”create view<視圖名>(<列名>,<列名>)as<子查詢> with check ooption” Case 9 刪除視圖 .text=”drop view<視圖>”End select End withEnd sub 注意: 在文本框中所加的文本都是在后面要講到的基本數(shù)據(jù)庫管理的命令格式。為了方便用戶,我們將操作的格式與COMBOBOX中的功能匹配地顯示到文本框中。(5)數(shù)據(jù)庫的基本管理是通過單擊“執(zhí)行”按鈕來控制的。“執(zhí)行”按鈕的
26、主要功能是啟動操作。 下面添加“執(zhí)行”按鈕代碼:Dim com as new oledbcommand()Com.connection=connCmandtext=txtsqlcom.textConn.open()打開連接Com.executenonquery()執(zhí)行SQL語句的操作Conn.close()關(guān)閉連接對于用戶的操作,不可能所有命令的格式和內(nèi)容都正確或被系統(tǒng)接受,還有可能會出現(xiàn)各種各樣的錯誤。出于糾錯的考慮,我們加入了異常處理。也就是說,運行可執(zhí)行的命令,將返回成功信息;執(zhí)行不可執(zhí)行的命令,則返回錯誤信息。 修改上面的代碼:Private sub cmdgo_click(by va
27、l sender as system.object,by val e as system.eventargs)_handles cmdgo.clickTry 如果發(fā)生異常則彈出對話框顯示 Dim com as new oledbcommand() Com.connection=conn Cmandtext=txtSQLcom.text Conn.open() 打開連接 Com.executenonquery() 執(zhí)行語句的操作 Conn.close() 關(guān)閉連接 Messagebox.show(_ “您的操作已經(jīng)成功地執(zhí)行!”,“恭喜!”,_ Messageboxbuttons.ok,mess
28、rmation_ )Catch Conn.close() 此時連接一定要關(guān)閉 Messagebox.show(_ Err.description,”警告”,_ Messageboxbuttons.ok,messageboxicon.warning) Exit subEnd tryEnd sub 技巧: ERR對象有一個屬性DESCRIPTION,它可以描述錯誤發(fā)生的類型,這在程序中可以很大地方使用戶,也減少了編程者大量的工作。 為了檢驗異常處理代碼的效果,我們運行程序,直接“執(zhí)行”按鈕,就會看到錯誤信息顯示。3. 源代碼下面是自制小軟件完整的源代碼,供大家參考。I
29、mports system.data.oledb引入對數(shù)據(jù)庫進行操縱的名字空間Public class form1 Inherits system.windows.forms.form以下省略windows form designer 產(chǎn)生的代碼Windows form designer generated code Private conn as new oledbconnection() 定義與數(shù)據(jù)庫的連接 Private sub form 1_load(by val sender as system.object,by val e as system.eventargs)Handles
30、mybase.load連接到數(shù)據(jù)庫Conn.connectionstring=_ “provider=Microsoft.jet.oledb.4.0;data source=sqltest.mdb”為combobox設(shè)定初始狀態(tài)Cmbtype.selectedindex=0為文本框設(shè)定初始狀態(tài)Txtsqlcom.text=”create table<表名>(<列名><數(shù)據(jù)類型>約束條件,)”End subPrivate sub cmdgo_click(byval sender as system.object,byval e as system.eventa
31、rgs) Handles cmdgo.click Try 如果發(fā)生異常則彈出對話框顯示 Dim com as new oledbcommand() Com.connection=conn Cmandtext=txtsqlcom.text Conn.open() 打開連接 Com.executenonquery() 執(zhí)行SQL語句的操作 Conn.close() 關(guān)閉連接 Messagebox.show(_“您的操作已經(jīng)成功地執(zhí)行!”,“恭喜!”,_Messageboxbuttons.ok,rmation_)Catch Conn.close() 此時連接一定
32、要關(guān)閉Messagebox.show(_ Err.description,“警告”,_ Messageboxbuttons.ok,messageboxicon.warning)Exit sub End tryEnd subPrivage sub cmbtype_selectedindexchanged(bybal sender as system.object,byval e as system.eventargs)handles cmbtype.selectedindexchanged With txtsqlcomSelect case cmbtype.selectedindex Case
33、0 .text=”create table<表名>(<列名><數(shù)據(jù)類型>約束條件,)” Case 1 對表進行修改 .text=”alter table<表名>add<新列名><數(shù)據(jù)類型>完整性約束drop<完整性約束>modify<列名><數(shù)據(jù)類型>” Case 2 刪除基本表 .text=”drop table<表名>” Case 3 添加新的記錄 .text=”insert into<表名>(屬性列,)values(常量,)” Case 4 更新數(shù)據(jù) .te
34、xt=”update<表名>set<列名>=<表達式>,where 條件” Case 5 刪除記錄 .text=”delete from<表名>where 條件” Case 6 新建索引 .text=”createuniqueclusterindex<索引名>on<表名>(<列名><次序>,)” Case 7 刪除索引 .text=”drop index<.索引名>on<表名>” 注意:在SQL的標(biāo)準(zhǔn)語法中,刪除索引為drop index<索引名> 但在ODBC中
35、,語法如上 Case 8 新建一個視圖 .text=”create vies<視圖名>(<列名>,<列名>)as<子查詢> with check option Case 9 刪除視圖 .text=”drop view<視圖名>” End select End with End subEnd class第三章 數(shù)據(jù)庫建立3.1 數(shù)據(jù)庫的設(shè)計在這個安全中,設(shè)計了一個名稱為PurchaseandSale的數(shù)據(jù)庫。根據(jù)系統(tǒng)功能的需要,在其中總共設(shè)計了6個數(shù)據(jù)表,分別如下: Products表 用于存儲產(chǎn)品的基本信息以及相應(yīng)的庫存數(shù)量; Sup
36、plier表 用于存儲供應(yīng)商的基本信息; Customer表 用于存儲客戶的基本信息; Users表 用于存儲系統(tǒng)用戶的基本信息; Purchase表用于存儲采購的記錄的基本信息; Sale表 用于存儲銷售記錄的基本信息。1Productort 數(shù)據(jù)表結(jié)構(gòu)Product數(shù)據(jù) 表主要用于存儲企業(yè)的產(chǎn)品或原材料信息,比如物品的名稱、產(chǎn)地、規(guī)格、單位等。另外,根據(jù)銷售記錄和采購記錄計算得出的每種商品的庫存數(shù)量也存放在Products數(shù)據(jù)表庫存字段。 Products數(shù)據(jù)表的結(jié)構(gòu)如表3-1所示。表3-1 Product數(shù)據(jù)表結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否允許為空說明商品名稱Nvarchar255否主鍵 ,
37、惟一標(biāo)識產(chǎn)品記錄產(chǎn)地Nvarchar40是規(guī)格 Nvarchar50是包裝Nvarchar50是單位Nchar19是庫存Int4是 產(chǎn)品庫存量,系統(tǒng)計算得出,默認(rèn)為02.Supplier數(shù)據(jù)表結(jié)構(gòu) Suppliers數(shù)據(jù)表主要用于存儲企業(yè)的供應(yīng)商信息,比如供應(yīng)商的編號、供應(yīng)商的名稱、供應(yīng)商的地址、聯(lián)系方式、開戶銀行和銀行賬號等。表3-2Suppliers數(shù)據(jù)表結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否允許為空說明供應(yīng)商簡稱nvarchar10否主鍵,惟一標(biāo)識供應(yīng)商記錄供應(yīng)商全稱nvarchar100是供應(yīng)商單位全稱地址nvarchar100是郵政編碼Nchar6是電話numeric9是傳真Numeric9是聯(lián)
38、系人Nvarchar30是聯(lián)系人電話Numeric9是開戶銀行Nvarchar100是銀行賬號Numeric13是企業(yè)網(wǎng)址Nvarchar50是3.1.1 各數(shù)據(jù)表的關(guān)系實際進銷存業(yè)務(wù)的一些數(shù)據(jù)是在多個業(yè)務(wù)活動中共享的,比如采購單中的商品必須在Product數(shù)據(jù)表中有相關(guān)記錄,所以在本課題中也對上述的6個數(shù)據(jù)表設(shè)置了對應(yīng)的關(guān)系 。具體關(guān)系主要表現(xiàn)在以下幾個方面: 采購單、銷售單中的經(jīng)手人必須是企業(yè)中的合法員工,本課題中要求經(jīng)手人必須是在Users數(shù)據(jù)表中有相應(yīng)記錄; 采購單、銷售單中的產(chǎn)品必須在Products數(shù)據(jù)表中有相應(yīng)的記錄。如果采購一種新商品,必須先在Products數(shù)據(jù)表中增加這種商
39、品的信息; 采購單中的供應(yīng)商必是Suppliers數(shù)據(jù)表中的有相應(yīng)的記錄。如果采購中發(fā)展了新供應(yīng)商,必須先在Suppliers數(shù)據(jù)表中增加這家供應(yīng)商的信息; 銷售中的客戶必須是Customer數(shù)據(jù)表中有相應(yīng)的記錄。如果銷售中發(fā)展了新客戶,必須 先在Customer數(shù)據(jù)表中增加這家客戶的信息。這些關(guān)系可以在SQL Server中用關(guān)系圖工具設(shè)計和查看,結(jié)果如圖4-1所示。3.1.2 數(shù)據(jù)表的創(chuàng)建下面介紹在Microsoft SQL Server2000中如何創(chuàng)建數(shù)據(jù)庫PurchaseandSale。具體操作步驟如下 :(1)打開Microsoft SQL Server2000企業(yè)管理器,單擊左窗
40、格中的加號圖標(biāo),一直將樹形結(jié)構(gòu)展開,直到出現(xiàn)數(shù)據(jù)庫服務(wù)上的文件夾列表,如圖3-2所示。(2)用鼠標(biāo)右鍵單擊“數(shù)據(jù)庫”圖標(biāo),在出現(xiàn)的快捷菜單中選擇“新建數(shù)據(jù)庫”項,出現(xiàn)如圖3-3所示的“數(shù)據(jù)庫屬性“對話框。(3)在“名稱“文本框中輸入需要新建的數(shù)據(jù)庫的名稱,這里是PurchaseandSale,然后單擊”確定“按鈕。這樣就創(chuàng)建了一個新的數(shù)據(jù)庫,但是這只是建立了一個空的數(shù)據(jù)表。這一步需要在這個數(shù)據(jù)庫中創(chuàng)建需要的6個數(shù)據(jù)表。 為了演示創(chuàng)建數(shù)據(jù)表的方法,這里用兩種不同的方法創(chuàng)建數(shù)據(jù)表Product,其他的表可以用類似的方法創(chuàng)建。1、利用數(shù)據(jù)表設(shè)計工具創(chuàng)建數(shù)據(jù)表ProductsMicrosoft SQL
41、 Server2000提供了數(shù)據(jù)表設(shè)計窗口,來幫助用戶快捷地創(chuàng)建需要的數(shù)據(jù)表。創(chuàng)建Products數(shù)據(jù)表的步驟如下:(1)在Microsoft SQL Server 2000窗口在左側(cè)空格中用鼠標(biāo)右鍵單擊“數(shù)據(jù)庫“列表項下面的”PurchaseandSale“圖標(biāo),在彈出的快捷落單中依次選擇”新建“”表“選項,出現(xiàn)如圖3-4所示的窗口。(2)在“列名“文本框中輸入數(shù)據(jù)庫的字段名,第一個字段名為”商品名稱“;在”數(shù)據(jù)類型“下拉列表框中選擇或輸入需要的數(shù)據(jù)類型,這里是”nvarchar”;在“長度”文本框中輸入需要的字條長度,這里輸入255;在“允許空”復(fù)選框中選擇是否允許這個字段為空,此處因為商
42、品名稱是商品記錄的主鍵,所以不允許此字段為空,取消對這個復(fù)選框的選擇。(3)按照上一步的方法設(shè)定其他字段。 (4)單擊工具欄上的保存圖標(biāo)按鈕,彈出如圖3-5所示的“選擇名稱”出對話框。這個對話框要求輸入新建數(shù)據(jù)表的名稱。此時輸入“Product“,然后單擊”確定“。這樣,就通過數(shù)據(jù)表設(shè)計工具窗口建立了一個數(shù)據(jù)表Product。2、利用SQL腳本創(chuàng)建數(shù)據(jù)表Products另外還有一種更快速建立數(shù)據(jù)表的方法,就是利用Microsoft SQL Server 2000提供的查詢分析器打開建表的SQL腳本,然后直接運行這個腳本,系統(tǒng)會自動按照腳本的要求建立數(shù)據(jù)庫中的所有數(shù)據(jù)表。具體的操作步驟如下;(1
43、)打開Microsoft SQL Server 2000提供的SQL查詢分析器,界面如圖3-6所示。(2)在查詢分析器的菜單中依次選擇“文件“”打開“選項,出現(xiàn)如圖3-7所示的”打開查詢文件“對話框。(3)在對話框中選擇光盤中提供的PurchaseandSale數(shù)據(jù)庫對應(yīng)的腳本文件PurchaseandSale。sql,然后單擊“打開“按鈕,返回SQL查詢分析器,如圖3-8所示。(4)這時,SQL查詢分析器中就裝載了生成PurchaseandSale數(shù)據(jù)庫中數(shù)據(jù)表的SQL腳本文件。單擊工具欄上的“執(zhí)行查詢”命令圖標(biāo),或者使用快捷鍵F5,系統(tǒng)會開(5)自動按照SQL腳本文件的要求建立數(shù)據(jù)庫中的所
44、在脯。數(shù)據(jù)表創(chuàng)建完成后,SQL查詢分析器的下方窗格會提示“命令已成功完成”。這樣,用戶不需要自己設(shè)置數(shù)據(jù)庫和數(shù)據(jù)表的任何屬性和字段,就可以通過SQL腳本文件生成需要的數(shù)據(jù)庫和數(shù)據(jù)表。3.1.3 主鍵和外鍵的創(chuàng)建在用光盤中提供的SQL腳本生成數(shù)據(jù)表的時候,SQL腳本中包含了數(shù)據(jù)表之間的關(guān)系和主鍵及外鍵的信息,所以這種方法創(chuàng)建的數(shù)據(jù)表就不再需要自行創(chuàng)建主鍵和外鍵了。在用數(shù)據(jù)表設(shè)計窗口設(shè)計的數(shù)據(jù)表中,并不會自動包含這些信息,所以需要用戶手動創(chuàng)建。1、主鍵的創(chuàng)建根據(jù)數(shù)據(jù)表的結(jié)構(gòu)清單,product數(shù)據(jù)表主鍵的步驟如下:(1)在SQL Serevr企業(yè)管理器中用鼠標(biāo)右鍵單擊“Product”數(shù)據(jù)表,在彈
45、出的快捷菜單中選擇“設(shè)計表”命令,打開數(shù)據(jù)表設(shè)計窗口。(2)選擇Product數(shù)據(jù)表的“商品名稱”字段,然后單擊工具欄上的設(shè)置主鍵圖標(biāo)按鈕“商品名稱”字段就被設(shè)置為數(shù)據(jù)表的主鍵,同時自動取消對“允許空”復(fù)選框的選取。其他幾個數(shù)據(jù)表的主鍵也賴以按照類似的方法創(chuàng)建。2、外鍵的創(chuàng)建Purchase 數(shù)據(jù)表中的商品名稱、經(jīng)手人和供應(yīng)商字段都是這個數(shù)據(jù)表的外鍵。所謂的外鍵,就是這個字段是另一個數(shù)據(jù)表的主鍵。外鍵字段的聚會是受限制的,只有兩種可能:一個是主鍵所在的表中已經(jīng)有的記錄;另一個為空,表示這個字段的值未知或現(xiàn)在不確定。Purchase數(shù)據(jù)表中的商品名稱字段為這個數(shù)據(jù)表的外鍵,對應(yīng)于Products
46、數(shù)據(jù)表中的主鍵商品的名稱字段已經(jīng)存在的取值,或者取空值。設(shè)置外鍵的方法和設(shè)置主鍵的方法不太一樣。下面用設(shè)置Purchase數(shù)據(jù)表的商品名稱字段為例來說明設(shè)置方法。(1)在Purchase數(shù)據(jù)表的數(shù)據(jù)表設(shè)計窗口中選擇商品名稱字段,然后單擊工具欄的“管理關(guān)系”工具圖標(biāo)按鈕,彈出如圖4-9所示的“屬性”對話框,并且默認(rèn)為“關(guān)系”選項卡。(2)在對話框的“選定的關(guān)系”下拉列表中列出了數(shù)據(jù)表中當(dāng)前存在的主鍵外鍵關(guān)系。如果需要新建一個關(guān)系,單擊“新建”按鈕,然后在“關(guān)系名”文本框中輸入關(guān)系名稱,這里輸入“FK_purchase_product”,然后在”主鍵表“下拉列表中選擇”Products“數(shù)據(jù)表的”
47、商品名稱“字段,這是主鍵表中的主鍵字段。在“外鍵表“下拉列表中選擇“Purchase”數(shù)據(jù)表的”商品名稱“字段,這是外鍵對應(yīng)的表和字段,如圖4-10所示。(3)在下面的復(fù)選框中根據(jù)需要設(shè)置,一般都采用默認(rèn)設(shè)置,然后單擊“關(guān)閉“按鈕即可。這樣,每次在Purchase數(shù)據(jù)表中插入記錄時,系統(tǒng)都會自動在Products數(shù)據(jù)表中商品名稱字段,以決定是否接受輸入的記錄。數(shù)據(jù)表清單中設(shè)計的其他幾個外鍵也可以按照類似的方法創(chuàng)建完成。3.2系統(tǒng)功能設(shè)計進銷存管理系統(tǒng)充分發(fā)揮信息技術(shù)的優(yōu)勢,通過集中式的信息數(shù)據(jù)庫,將企業(yè)的進、銷、存等經(jīng)營業(yè)務(wù)有機地結(jié)合起來,達到數(shù)據(jù)共享、降低成本、提高效率、改進服務(wù)的目的,進而
48、提高企業(yè)的生產(chǎn)效率和管理水平。根據(jù)需求分析,設(shè)計的進銷存管理系統(tǒng)的模塊組織結(jié)構(gòu)如圖3-11所示。進銷存管理系統(tǒng)日常業(yè)務(wù)庫存管理統(tǒng)計查詢基礎(chǔ)信息系統(tǒng)設(shè)置退出系統(tǒng)采購單供應(yīng)商管理產(chǎn)品管理客戶管理庫存查詢密碼設(shè)置采購查詢關(guān)于系統(tǒng)銷售查詢銷售單庫存盤點下面對各模塊的設(shè)計功能進行說明。 采購單:日常業(yè)務(wù)中需要頻繁使用的功能,主要是對每筆采購入庫進行記錄,自動生成對應(yīng)的采購憑證。采購單中的商品名稱、供應(yīng)商務(wù)經(jīng)手人字段分別對應(yīng)Products、數(shù)據(jù)表、Suppliers數(shù)據(jù)表和Users數(shù)據(jù)表的相關(guān)字段,所以這里需要檢驗用戶輸入的合法性。為了管理的方便和規(guī)范,每筆采購單對應(yīng)一個唯一采購單票號。某時刻界面如圖
49、3-12所示。 銷售單:日常業(yè)務(wù)中需要頻繁使用的功能,主要是對每筆銷售出庫業(yè)務(wù)進行記錄,自動生成對應(yīng)的銷售憑證。銷售單中的商品名稱、客戶和經(jīng)手人字段分別對應(yīng)Product數(shù)據(jù)表、Customer數(shù)據(jù)表和Users數(shù)據(jù)表中的相關(guān)字段,所以這里需要檢驗用戶輸入的合法性。為了管理的方便和規(guī)范,每筆銷售單對應(yīng)一個唯一采銷售單票號。 庫存盤點:管理中的重要業(yè)務(wù)活動,主要是根據(jù)采購記錄和銷售記錄對庫存商品盤點,更新每種商品的庫存量,為制定采購計劃提供依據(jù)。計算庫時需要檢索第一種商品的采購記錄,匯總得到此種商品總共的采購數(shù)量,然后檢索這種商品的銷售記錄,匯總得到此種商品總的銷售數(shù)量,最后用總采購數(shù)量和部銷售
50、數(shù)量相減即可。 產(chǎn)品管理:庫存管理中輔助業(yè)務(wù),主要是當(dāng)有產(chǎn)品或者商品的屬性數(shù)據(jù)改變時,需要在這里進行更新。 庫存:統(tǒng)計查詢功能中的一個模塊,提供了對庫存商品按照多種字段進行模糊查詢的功能。庫存查詢的初始界面如圖3-13所示。 采購查詢:統(tǒng)計查詢功能中的一個模塊,提供了對采購記錄的多種字段的復(fù)合式功能。 銷售查詢:統(tǒng)計查詢功能中的一個模塊,提供了對銷售記錄的多種字段的復(fù)合式功能。 供應(yīng)商管理:基礎(chǔ)信息維護中的一個模塊,主要用于對供應(yīng)商信息進行查詢和維護。為了方便對多個供應(yīng)商的管理和比較,本課題中將此功能用Tab頁的形式實現(xiàn),既方便對單個供應(yīng)商信息的查看和編輯,又利于對供應(yīng)商總體的評價和比較。某時
51、刻運行界面如圖3-14所示。 客戶管理:基礎(chǔ)信息維護中的一個模塊,主要用于對企業(yè)客戶信息的查詢和維護。為了方便對多個客戶的管理和比較,本課題中也將此功能和Tab頁的形式實現(xiàn),既方便對單個客戶信息的查看和紡織,又利于對客戶總體的評價和比較。 密碼設(shè)置:系統(tǒng)設(shè)置聽一個模塊,主要用于為系統(tǒng)中現(xiàn)有的用戶提供字碼更改功能。 關(guān)于系統(tǒng):系統(tǒng)設(shè)置中的一個模塊,主要用于說明本系統(tǒng)的版本版權(quán)等信息。為了用戶使用本系統(tǒng)的方便,該模塊中還提供了計算機系統(tǒng)信息的顯示功能。 退出系統(tǒng):用于退出本系統(tǒng)。為了防止用戶的誤操作,退出系統(tǒng)之前需要用戶確認(rèn)退出的操作。整個系統(tǒng)運行的流程圖大致如圖3-15所示。工作人員工作人員工作
52、人員工作人員客戶供應(yīng)商查詢結(jié)果采購單銷售單數(shù)據(jù)庫3.3 創(chuàng)建庫存盤點窗口菜單中的第項是庫存盤點。所謂的庫存盤點就是根據(jù)銷售記錄和采購記錄計算出Product數(shù)據(jù)表中每種商品或產(chǎn)品的庫存數(shù)量。由于企業(yè)中采購和銷售活動非常頻繁,而且銷售的商品種類需要考慮到實際庫存大于零,因此庫存盤點功能也是十分常用和重要的。創(chuàng)建庫存盤點窗口的步驟如下:(1)按照前述方法在應(yīng)用程序工程中加入一個Windows窗口frmKCPD。(2)設(shè)置frmKCPD窗口的Ico屬性為System.ico,BorderStyle屬性為Fixed Dialog,StartUpPosition屬性為屏幕中心。(3)從工具箱中拖動一個Adodc控件到窗體中,命名為adoKCPD。按照前述方法設(shè)置其鏈接屬性使其連接到PurchaseandSale數(shù)據(jù)庫并檢索Product數(shù)據(jù)表中的所有記錄。設(shè)置adoKCPD的Visible屬性值為F
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度廚師健康管理與職業(yè)發(fā)展規(guī)劃合同4篇
- 二零二五年度臨時工勞務(wù)派遣服務(wù)合同范本6篇
- 2025年度設(shè)施農(nóng)業(yè)大棚租賃合同范本4篇
- 2025年度個人房產(chǎn)買賣合同范本(含貸款及還款安排)4篇
- 2025年度耐火材料生產(chǎn)設(shè)備維護保養(yǎng)合同4篇
- 2025年度個人現(xiàn)金借款合同金融科技應(yīng)用協(xié)議4篇
- 2025年個人地下室租賃合同書(附帶車位及綠化服務(wù))2篇
- 2025年度經(jīng)理級管理人員績效考核與薪酬調(diào)整合同
- 2025年度專業(yè)打印設(shè)備租賃合同示范文本2篇
- 2025年度農(nóng)田土地流轉(zhuǎn)與農(nóng)業(yè)金融服務(wù)合同
- 阻燃材料的阻燃機理建模
- CJT 511-2017 鑄鐵檢查井蓋
- 配電工作組配電網(wǎng)集中型饋線自動化技術(shù)規(guī)范編制說明
- 職業(yè)分類表格
- 2024高考物理全國乙卷押題含解析
- 廣東省深圳高級中學(xué)2023-2024學(xué)年八年級下學(xué)期期中考試物理試卷
- 介入科圍手術(shù)期護理
- 青光眼術(shù)后護理課件
- 設(shè)立工程公司組建方案
- 設(shè)立項目管理公司組建方案
- 《物理因子治療技術(shù)》期末考試復(fù)習(xí)題庫(含答案)
評論
0/150
提交評論