freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì)基于rfid的庫(kù)存管理系統(tǒng)(編輯修改稿)

2025-01-08 17:58 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 a。庫(kù)存管理最重要,最核心的部分是與數(shù)據(jù)庫(kù)的連接與對(duì)數(shù)據(jù)庫(kù)的操作。這里我們使用的 SQL Server 2021 數(shù)據(jù)庫(kù) 軟件 。 這里涉及到一個(gè) ODBC 和 JDBC 的問題,下面我們來論述下這兩種數(shù)據(jù)庫(kù)的優(yōu)缺點(diǎn)。 ODBC ODBC 簡(jiǎn)介 O D B C 的基本思想是為用戶提供簡(jiǎn)單、標(biāo)準(zhǔn)、透明的數(shù)據(jù)庫(kù)連接的公共編程接口,開發(fā)廠商根據(jù) ODBC 的標(biāo)準(zhǔn)去實(shí)現(xiàn)底層的驅(qū)動(dòng)程序,這個(gè)驅(qū)動(dòng)對(duì)用戶是透明的,并允許根據(jù)不同 的 DBMS 采用不同的技術(shù)加以優(yōu)化實(shí)現(xiàn),這就利于不斷吸收新的技術(shù)而趨完善。 ODBC 出現(xiàn)以后,用戶安裝不同的 DBMS 驅(qū)動(dòng)就可用同樣的 SQL 語句實(shí)現(xiàn)在不同 DBMS 上進(jìn)行同樣的操作,而且無需預(yù)編譯。 ODBC 帶來了數(shù)據(jù)庫(kù)連接方式的變革。在傳統(tǒng)方式中,開發(fā)人員要熟悉多個(gè) D B M S 及其 API ,一旦 DBMS 端出現(xiàn)變動(dòng),則往往導(dǎo)致用戶端系統(tǒng)重新編建或者源代碼的修改,這給開發(fā)和維護(hù)工作帶來了很大困難。在 ODBC 方式中,不管底層網(wǎng)絡(luò)環(huán)境如何,也無論采用何種 DBMS,用戶在程序中都使用同一套標(biāo)準(zhǔn)代碼,無需 逐個(gè)了解各 DBMS 及其 API 的特點(diǎn),源程序不因底層的變化而重新編建或修改,從而減輕了開發(fā)維護(hù)的工作量,縮短了開發(fā)周期。 ODBC 的特點(diǎn): (1) 使用戶程序有很高的互操作性,相同的目標(biāo)代碼適用于不同的 D B M S 。 (2) 由于 ODBC 的開放性,它為程序集成提供了便利,為客戶機(jī) / 服務(wù)器結(jié)構(gòu)提供了技術(shù)支持。 (3) 由于應(yīng)用與底層網(wǎng)絡(luò)環(huán)境和 DBMS 分開,簡(jiǎn)化了開發(fā)維護(hù)上的困難。 13 ODBC 的體系結(jié)構(gòu)和實(shí)現(xiàn) O D B C 是依靠分層結(jié)構(gòu)來實(shí)現(xiàn)的,如此可保證其標(biāo)準(zhǔn)性和開放性 。它共分為四層:應(yīng)用程序、驅(qū)動(dòng)程序管理器、驅(qū)動(dòng)程序和數(shù)據(jù)源。下面我們?cè)敿?xì)介紹各層的功能。 (1) 應(yīng)用程序?qū)?(Application)使用 ODBC 接口的應(yīng)用程序可執(zhí)行以下任務(wù): 1)請(qǐng)求與數(shù)據(jù)源的連接和會(huì)話 (SQLConnect); 2)向數(shù)據(jù)源發(fā)送 SQL 請(qǐng)求(SQLExecDirct 或 SQLExecute); 3)對(duì) SQL 請(qǐng)求的結(jié)果定義存儲(chǔ)區(qū)和數(shù)據(jù)格式;4)請(qǐng)求結(jié)果; 5)處理錯(cuò)誤; 6)如果需要,把結(jié)果返回給用戶; 7)對(duì)事務(wù)進(jìn)行控制,請(qǐng)求執(zhí)行或回退操作 (SQLTransact); 8)終止對(duì)數(shù)據(jù)源 的連接(SQLDisconnect)。 (2) 驅(qū)動(dòng)程序管理器 (Driver Manager) 由微軟提供的驅(qū)動(dòng)程序管理器是帶有輸入庫(kù)的動(dòng)態(tài)連接庫(kù) ODBC。 DLL ,其主要目的是裝入驅(qū)動(dòng)程序,此外還執(zhí)行以下工作 : 1)處理幾個(gè) ODBC 初始化調(diào)用; 2)為每一個(gè)驅(qū)動(dòng)程序提供 ODBC 函數(shù)入口點(diǎn); 3)為 O D B C 調(diào)用提供參數(shù)和次序驗(yàn)證。 (3) 驅(qū)動(dòng)程序 (Driver) 驅(qū)動(dòng)程序是實(shí)現(xiàn) ODBC 函數(shù)和數(shù)據(jù)源交互的 DLL,當(dāng)應(yīng)用程序調(diào)用 SQL Connect 或者 SQLDriverConnect 函數(shù)時(shí) ,驅(qū)動(dòng)程序管理器裝入相應(yīng)的驅(qū)動(dòng)程序,它對(duì)來自應(yīng)用程序的 ODBC 函數(shù)調(diào)用進(jìn)行應(yīng)答,按照其要求執(zhí)行以下任務(wù) : 1)建立與數(shù)據(jù)源的連接; 2)向數(shù)據(jù)源提交請(qǐng)求; 3)在應(yīng)用程序需求時(shí),轉(zhuǎn)換數(shù)據(jù)格式; 4)返回結(jié)果給應(yīng)用程序; 5)將運(yùn)行錯(cuò)誤格式化為標(biāo)準(zhǔn)代碼返回; 6)在需要時(shí)說明和處理光標(biāo)。 (4) 數(shù)據(jù)源 [5] JDBC JDBC簡(jiǎn)介 JDBC(Java Database Connectivity ,Java 數(shù)據(jù)庫(kù)連接 ) 作為 Java 平臺(tái)的一個(gè)標(biāo)準(zhǔn)組成部分 ,是根據(jù)“與平臺(tái)無關(guān)”的 基本原則而設(shè)計(jì)的 ,對(duì)獨(dú)立于數(shù)據(jù)庫(kù)的跨平臺(tái)的數(shù)據(jù)庫(kù)訪問提供了有力的技術(shù)支持 。 14 JDBC 是 Java 程序連接和訪問各種數(shù)據(jù)庫(kù)的 API(Application Programming Interface ,應(yīng)用程序接口 ) ,它由一組類和接口構(gòu)成 ,通過調(diào)用這些類和接口所提供的方法 ,提供了 Java 程序與各種數(shù)據(jù)庫(kù)服務(wù)器之間的連接服務(wù) ,它支持ANSI SQL 92 標(biāo)準(zhǔn) ,實(shí)現(xiàn)了從 Java 程序內(nèi)調(diào)用標(biāo)準(zhǔn)的 SQL 命令對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢、插入、刪除和更新等操作 ,并確保數(shù)據(jù)事務(wù)的正常進(jìn)行 。 JDBC 在 J2EE 平臺(tái)中 使用 JDBC 以上的 API 以及 JDBC 擴(kuò)展 API ,它們提供了在企業(yè)級(jí)開發(fā)應(yīng)用中對(duì)異構(gòu)數(shù)據(jù)庫(kù)的連接和跨平臺(tái)數(shù)據(jù)庫(kù)訪問的重要接口 。 JDBC 的體系結(jié)構(gòu) 和實(shí)現(xiàn) (1) Java 作為數(shù)據(jù)庫(kù)前臺(tái) 在信息時(shí)代,數(shù)據(jù)庫(kù)是用于收集和處理數(shù)據(jù)的工具,數(shù)據(jù)庫(kù)形成了許多公司基礎(chǔ)結(jié)構(gòu)的基礎(chǔ)。盡管數(shù)據(jù)庫(kù)系統(tǒng)非常適合數(shù)據(jù)的存儲(chǔ)和取得,但人類需要某種前臺(tái)應(yīng)有程序以查閱和使用存放的數(shù)據(jù)。 Java 對(duì)建立數(shù)據(jù)庫(kù)服務(wù)器前臺(tái)應(yīng)用程序的開發(fā)人員提供了幾個(gè)好處。 Java是“一旦寫成,到處運(yùn)行”的語言,即 Java 程序不經(jīng)改變即可部署到任何運(yùn)行Java 虛擬機(jī)的計(jì)算機(jī)結(jié)構(gòu)和操作系統(tǒng)。對(duì)于大公司,有一個(gè)公用開發(fā)平臺(tái)好處很大,編程人員可以不再為大公司中的各個(gè)平臺(tái)分別編程。 Java 也很吸引第三方開發(fā)者,單個(gè) Java 程序即可滿足大公司客戶的需求。 建立公司系統(tǒng)中基于 Java 的應(yīng)用程序和小程序的動(dòng)力是巨大的。公司對(duì)于將結(jié)構(gòu)和操作系統(tǒng)相關(guān)模型變成針對(duì)網(wǎng)絡(luò)的模型相當(dāng)有興趣。 Java 代表著節(jié)約資源成本的長(zhǎng)期戰(zhàn)略。 對(duì)于開發(fā)人員, Java 代表巨大的市場(chǎng)機(jī)會(huì)。大中型企業(yè)很少不用數(shù)據(jù)庫(kù)進(jìn)行業(yè)務(wù)工作的,大部分公司將數(shù)據(jù)庫(kù)應(yīng)用到業(yè)務(wù)的各個(gè)方面, 從人事資源到前線客戶銷售。 (2) JDBC API JDBC API 使開發(fā)者不必不斷重寫程序而可以建立數(shù)據(jù)庫(kù)前臺(tái)。盡管 ANSI 委員會(huì)有個(gè)標(biāo)準(zhǔn)組,但每個(gè)數(shù)據(jù)庫(kù)系統(tǒng)廠家的系統(tǒng)連接和通訊方法仍然五花八門。 15 為了建立健全獨(dú)立于平臺(tái)的應(yīng)用程序和基于 Web 的小程序,開發(fā)人員應(yīng)考慮用 Java 開發(fā)前臺(tái)連接辦法。從外部看,第三方軟件開發(fā)者通過專用辦法,通過本地方法集成客戶機(jī)方庫(kù)或通過建立第三層和新協(xié)議來滿足這種需求。 JavaSoft 是 Sun 公司負(fù)責(zé)開發(fā) Java 產(chǎn)品的業(yè)務(wù)單位,和數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)工具廠家一起建立獨(dú)立于 DBMS 的機(jī)制,使開發(fā)人員不必考慮所用的特定數(shù)據(jù)庫(kù)而編寫客戶機(jī)方應(yīng)用程序。產(chǎn)生的 JDBC API 第一版是核心 JDK 2 的一部分。 JDBC 向應(yīng)用程序開發(fā)者提供了獨(dú)立于數(shù)據(jù)庫(kù)的統(tǒng)一的 API。這個(gè) API提供了編寫的標(biāo)準(zhǔn)和考慮所有不同應(yīng)用程序設(shè)計(jì)的標(biāo)準(zhǔn)。其奧秘是一組由驅(qū)動(dòng)程序?qū)崿F(xiàn)的 Java接口。驅(qū)動(dòng)程序負(fù)責(zé)標(biāo)準(zhǔn) JDBC調(diào)用向支持的數(shù)據(jù)庫(kù)所要的具體調(diào)用轉(zhuǎn)變。 應(yīng)用程序編寫一次并移植到各種驅(qū)動(dòng)程序上。應(yīng)用程序不變,驅(qū)動(dòng)程序則各不相同。驅(qū)動(dòng)程序可以用于開發(fā)多層數(shù)據(jù)庫(kù)設(shè)計(jì)的中間層,也稱中間件(middleware)。 除了向開發(fā) 者提供統(tǒng)一的獨(dú)立于 DBMS 的框架外, JDBC 還提供了讓開發(fā)者保持?jǐn)?shù)據(jù)庫(kù)廠家提供的特定功能的辦法。 JDBC 驅(qū)動(dòng)程序必須支持 ANSI AQL2項(xiàng)目層,但 JDBC 允許開發(fā)者直接將查詢字符串傳遞到連接的驅(qū)動(dòng)程序。這些字段可能是 ANSI SQL 也可能不是,或者根本不是 AQL。這些字符串的使用是基礎(chǔ)驅(qū)動(dòng)程序的事。 JDBC 不是 Mincrosoft 的 ODBC(開放式數(shù)據(jù)庫(kù)連接 )規(guī)范派生的, JDBC 完全是用 Java 編寫的,而 ODBC 是個(gè) C接口。但是, JDBC 和 ODBC 都是基于 X/開放SQL 命令層接口 (CLI),相同的概念 性基礎(chǔ)使 API 工作進(jìn)展更快,使 API 的接受更加容易。 JavaSoft 提供了將 JDBC 變成 ODBC 的 JDBCODBC 橋。這個(gè)用本地方法完成的版本很小很有效。 (3) JDBC 的組成 JDBC 是實(shí)現(xiàn) Java 應(yīng)用程序與各種不同數(shù)據(jù)庫(kù)對(duì)話的一種機(jī)制 。 JDBC 由兩部分與數(shù)據(jù)庫(kù)獨(dú)立的 API 組成 ,一部分是面向程序開發(fā)人員的 JDBCAPI ,另一部分是面向底層的 JDBC Driver API。 JDBC 提供了一個(gè)通用的 JDBC Driver Manager ,用來管理各種數(shù)據(jù)庫(kù)軟件商提供的 JDBC 驅(qū)動(dòng)程序 ,從而訪問其數(shù)據(jù)庫(kù) 。 此外 ,對(duì)沒有提供相應(yīng) JDBC 驅(qū)動(dòng)程序的數(shù)據(jù)庫(kù)系統(tǒng) ,開發(fā)了特殊的驅(qū)動(dòng)程序 :JDBC ODBC 橋 ,該驅(qū)動(dòng)程序支持 JDBC 通過現(xiàn)有的 ODBC 驅(qū)動(dòng)程序訪問其數(shù)據(jù) 16 庫(kù)系統(tǒng) 。 JDBC 的基本層次結(jié)構(gòu)由 Java 程序、 JDBC 驅(qū)動(dòng)程序管理器、驅(qū)動(dòng)程序和數(shù)據(jù)庫(kù)四部分組成 。 Java 程序 :Java 程序包括 Java 應(yīng)用程序和 Ja2va 小應(yīng)用程序 ,主要是根據(jù) JDBC 方法實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問和操作 。 其主要任務(wù)有 :請(qǐng)求與數(shù)據(jù)庫(kù)建立連接 。向數(shù)據(jù)庫(kù)發(fā)送 SQL 請(qǐng)求 。為結(jié)果集定義存儲(chǔ)應(yīng)用和數(shù)據(jù)類型 。查詢結(jié)果 。處理錯(cuò)誤 ??刂苽鬏?、提交及關(guān)閉連接等操作 。 JDBC 驅(qū)動(dòng)程序管理器 :它能夠動(dòng)態(tài)地管理和維護(hù)數(shù)據(jù)庫(kù)查詢所需要的所有驅(qū)動(dòng)程序?qū)ο?,實(shí)現(xiàn) Java 程序與特定驅(qū)動(dòng)程序的連接 ,從而體現(xiàn) JDBC 的“與平臺(tái)無關(guān)”這一特點(diǎn) 。 其主要任務(wù)有 :為特定數(shù)據(jù)庫(kù)選擇驅(qū)動(dòng)程序 。處理 JDBC 初始化調(diào)用 。為每個(gè)驅(qū)動(dòng)程序提供 JDBC 功能的入口 。為 JDBC 調(diào)用執(zhí)行參數(shù)等 。 驅(qū)動(dòng)程序 :驅(qū)動(dòng)程序處理 JDBC 方法 ,向特定數(shù)據(jù)庫(kù)發(fā)送 SQL 請(qǐng)求 ,并為 Java 程序獲取結(jié)果 。 在必要的時(shí)候 ,驅(qū)動(dòng)程序可以翻譯或優(yōu)化請(qǐng)求 ,使 SQL 請(qǐng)求符 合DBMS 支持的語言 。 其主要任務(wù)有 :建立與數(shù)據(jù)庫(kù)的連接 。向數(shù)據(jù)庫(kù)發(fā)送請(qǐng)求 。用戶程序請(qǐng)求時(shí) ,執(zhí)行翻譯 。將錯(cuò)誤代碼格式化成標(biāo)準(zhǔn)的 JDBC 錯(cuò)誤代碼等 。 JDBC 是獨(dú)立于數(shù)據(jù)庫(kù)管理系統(tǒng)的 ,而每個(gè)數(shù)據(jù)庫(kù)系統(tǒng)均有自己的協(xié)議與客戶機(jī)通信 ,因此 ,JDBC 利用數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序來使用這些數(shù)據(jù)庫(kù)引擎 。 JDBC 驅(qū)動(dòng)程序由數(shù)據(jù)庫(kù)軟件商和第三方軟件商提供 ,因此 ,根據(jù)編程所使用的數(shù)據(jù)庫(kù)系統(tǒng)不同 ,所需要的驅(qū)動(dòng)程序也有所不同 。 數(shù)據(jù)庫(kù) :指 Java 程序需要訪問的數(shù)據(jù)庫(kù)及其數(shù)據(jù)庫(kù)管理系統(tǒng) 。 (3) JDBC 的工作機(jī)制 如果用戶是 從事軟件領(lǐng)域工作的,不可能沒有聽說過 SQL(Structure Query Language:結(jié)構(gòu)化查詢語言 ),它是一種標(biāo)準(zhǔn)化的關(guān)系型數(shù)據(jù)庫(kù)訪問語言。在 SQL看來,數(shù)據(jù)庫(kù)就是表的集合,其中包含了行和列。 SQL標(biāo)準(zhǔn)雖然也還處在不斷變革之中 (任何一門標(biāo)準(zhǔn)如果已一成不變了,那只能說明這門學(xué)科已經(jīng)停止發(fā)展了 ),但其基本內(nèi)容相對(duì)穩(wěn)定。 JDBC 定義了 Java 語言同 SQL 數(shù)據(jù)之間的程序設(shè)計(jì)接口。 JDBC 有一個(gè)非常獨(dú)特的動(dòng)態(tài)連接結(jié)構(gòu),它使得系統(tǒng)模塊化。使用 JDBC 來完成對(duì)數(shù)據(jù)庫(kù)的訪問包括以下四個(gè)主要組件: Java 的應(yīng)用程 序、 JDBC 驅(qū)動(dòng)器管理器、驅(qū)動(dòng)器和數(shù)據(jù)源。 17 JavaSoft 公司開發(fā)了 JDBC API, JDBC API 是一個(gè)標(biāo)準(zhǔn)統(tǒng)一的 SQL 數(shù)據(jù)存取接口。 JDBC 在 Inter 中的作用與 ODBC 在 Windows 系列中的作用類似。它為Java 程序提供了一個(gè)統(tǒng)一縫地操作各種數(shù)據(jù)庫(kù)的接口,程序員編程時(shí),可以不關(guān)心它所要操作的數(shù)據(jù)庫(kù)是哪個(gè)廠家的產(chǎn)品,從而提高了軟件的通用性,而且在Inter 上確實(shí)無法預(yù)料你的用戶想訪問什么類型的數(shù)據(jù)庫(kù)。只要系統(tǒng)上安裝了正確的驅(qū)動(dòng)器組, JDBC 應(yīng)用程序就可以訪問其相關(guān)的數(shù)據(jù)庫(kù)。 用 JDBC 來實(shí)現(xiàn)訪問數(shù)據(jù)庫(kù)記錄可以采用下面的幾個(gè)步驟: 1) 通過驅(qū)動(dòng)器管理器獲取連接接口。 2) 獲得 Statement 或它的子類。 3) 限制 Statement 中的參數(shù)。 4) 執(zhí)行 Statement。 5) 查看返回的行數(shù)是否超出范圍。 6) 關(guān)閉 Statement。 7) 處理其它的 Statement 8) 關(guān)閉連接接口。 (4) JDBC 驅(qū)動(dòng)程序的分類 JDBC 驅(qū)動(dòng)程序?qū)崿F(xiàn)在 JDBC API 中定義的所有抽象類和接口 ,為通用的Driver Manager 提供 JD2BC API。 JDBC 驅(qū)動(dòng)程序通常由數(shù) 據(jù)庫(kù)廠商提供 ,目前主流數(shù)據(jù)庫(kù)產(chǎn)品都提供相關(guān)的 JDBC 驅(qū)動(dòng)程序 。 根據(jù)訪問數(shù)據(jù)庫(kù)的技術(shù)不同 ,JDBC 驅(qū)動(dòng)程序相應(yīng)地分為四種類型 ,如圖 1 所示 。 不同類型的 JDBC 驅(qū)動(dòng)程序有著不一樣的特性和使用方法 。 第一類 :JDBC ODBC 橋驅(qū)動(dòng)程序 (JDBC OD2BC Bridge) 。 此類驅(qū)動(dòng)程序提供了通過 ODBC 驅(qū)動(dòng)程序的 JDBC 訪問 。 其特點(diǎn)是必須在本地計(jì)算機(jī)上先安裝好 ODBC 驅(qū)動(dòng)程序 ,然后通過 JDBC ODBCBridge 的轉(zhuǎn)換 ,將 Java 程序中使用的JDBC API 訪問指令轉(zhuǎn)換成 ODBC API 指令 ,進(jìn)而通過 ODBC 驅(qū)動(dòng)程序調(diào)用本地?cái)?shù)據(jù)庫(kù)驅(qū)動(dòng)代碼完成對(duì)數(shù)據(jù)庫(kù)的訪問 。 這種方法的不足是 :執(zhí)行效率比較低 ,不適合對(duì)大數(shù)據(jù)量存取的應(yīng)用 。要求客戶端必須安裝 ODBC 驅(qū)動(dòng) ,不適合基于InterPIntra 的應(yīng)用 。 18 第二類 :部分 Java 的本地 JDBC API 橋驅(qū)動(dòng)程序 (JDBC Native API Bridge) 。 同第一類一樣 ,
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1