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

正文內(nèi)容

第七章數(shù)據(jù)庫(kù)設(shè)計(jì)與編程-資料下載頁(yè)

2024-10-24 14:51本頁(yè)面

【導(dǎo)讀】應(yīng)用系統(tǒng)中使用SQL編程來(lái)訪(fǎng)問(wèn)和管理數(shù)。接與嵌入數(shù)據(jù)庫(kù))等方式。SQL語(yǔ)言提供了兩種不同的使用方式:。為什么要引入嵌入式SQL. SQL語(yǔ)言是非過(guò)程性語(yǔ)言。事務(wù)處理應(yīng)用需要高級(jí)語(yǔ)言。這兩種方式細(xì)節(jié)上有差別,在程序設(shè)計(jì)的環(huán)境下,1.由DBMS的預(yù)處理程序?qū)υ闯绦蜻M(jìn)行掃描,允許出現(xiàn)說(shuō)明語(yǔ)句的地方,都可以寫(xiě)說(shuō)明性SQL語(yǔ)句。負(fù)責(zé)控制程序流程。描述系統(tǒng)當(dāng)前工作狀態(tài)。這些信息將送到SQL通信區(qū)SQLCA中。應(yīng)用程序從SQLCA中取出這些狀態(tài)信息,據(jù)此決定。違反數(shù)據(jù)保護(hù)規(guī)則,操作拒絕。成功刪除,并有刪除的行數(shù)。無(wú)條件刪除警告信息。由于各種原因,執(zhí)行出錯(cuò)。如果SQLCODE等于預(yù)定義的常量SUCCESS,則。應(yīng)用程序每執(zhí)行完一條SQL語(yǔ)句之后都應(yīng)該測(cè)試。將數(shù)據(jù)庫(kù)中的數(shù)據(jù)修改為指定值。輸出主變量可以利用指示變量檢測(cè)出是否空值,1)說(shuō)明主變量和指示變量。為了與數(shù)據(jù)庫(kù)對(duì)象名(表名、視圖名、列。指示變量前也必須加冒號(hào)標(biāo)志。主語(yǔ)言是面向記錄的,一組主變量一次。用戶(hù)可以用SQL語(yǔ)句逐一從游標(biāo)中獲取記錄,

  

【正文】 /* 打開(kāi)游標(biāo) */ 例題(續(xù)) WHILE(1){ /* 用循環(huán)結(jié)構(gòu)逐條處理結(jié)果集中的記錄 */ EXEC SQL FETCH SX INTO :HSno, :HSname, :HSsex, :HSage。 /* 將游標(biāo)指針向前推進(jìn)一行,然后從結(jié) 果集中取當(dāng)前行,送相應(yīng)主變量 */ 例題(續(xù)) if ( SUCCESS) break。 /* 若所有查詢(xún)結(jié)果均已處理完或 出現(xiàn) SQL語(yǔ)句錯(cuò)誤,則退出循環(huán) */ printf(%s, %s, %s, %d, Sno, Sname, Ssex, Sage)。 /* 顯示該記錄 */ 例題(續(xù)) printf(DELETE ? )。 /* 問(wèn)用戶(hù)是否要?jiǎng)h除 */ scanf(%c,amp。yn)。 if (yn=39。y39。 or yn=39。Y39。) /* 需要?jiǎng)h除 */ EXEC SQL DELETE FROM Student WHERE CURRENT OF SX。 /* 刪除當(dāng)前記錄 */ 例題(續(xù)) ...... ...... }。 EXEC SQL CLOSE SX。 /* 關(guān)閉游標(biāo) */ ...... ...... 動(dòng)態(tài) SQL簡(jiǎn)介 ? 靜態(tài)嵌入式 SQL ? 動(dòng)態(tài)嵌入式 SQL 一、靜態(tài) SQL的特點(diǎn) ? 用戶(hù)可以在程序運(yùn)行過(guò)程中根據(jù)實(shí)際需要輸入 WHERE子句或 HAVING子句中某些變量的 值 。 ? 語(yǔ)句中主變量的 個(gè)數(shù)與數(shù)據(jù)類(lèi)型 在預(yù)編譯時(shí)都是確定的,只有是主變量的 值 是程序運(yùn)行過(guò)程中動(dòng)態(tài)輸入的。 靜態(tài) SQL的不足 靜態(tài) SQL語(yǔ)句提供的編程 靈活性 在許多情況下 仍顯得不足,不能編寫(xiě)更為通用的程序。 需求 例,對(duì) SC: ? 任課教師想查選修某門(mén)課程的所有學(xué)生的學(xué)號(hào)及其成績(jī) ? 班主任想查某個(gè)學(xué)生選修的所有課程的課程號(hào)及相應(yīng)成績(jī) ? 學(xué)生想查某個(gè)學(xué)生選修某門(mén)課程的成績(jī) 即:查詢(xún) 條件是不確定 的,要查詢(xún)的 屬性列 也是不確定的 二、動(dòng)態(tài) SQL 1. 什么是動(dòng)態(tài)嵌入式 SQL ? 動(dòng)態(tài) SQL方法允許在程序運(yùn)行過(guò)程中臨時(shí)“ 組裝 ” SQL語(yǔ)句。 2. 應(yīng)用范圍 ? 在 預(yù)編譯 時(shí)下列信息不能確定時(shí) ? SQL語(yǔ)句正文 ? 主變量個(gè)數(shù) ? 主變量的數(shù)據(jù)類(lèi)型 ? SQL語(yǔ)句中引用的數(shù)據(jù)庫(kù)對(duì)象(列、索引、基本表、視圖等) 動(dòng)態(tài) SQL(續(xù)) 3. 動(dòng)態(tài) SQL的形式 ? 語(yǔ)句可變 ? 臨時(shí)構(gòu)造完整的 SQL語(yǔ)句 ? 條件可變 ? WHERE子句中的條件 ? HAVING短語(yǔ)中的條件 ? 數(shù)據(jù)庫(kù)對(duì)象、查詢(xún)條件均可變 ? SELECT子句中的列名 ? FROM子句中的表名或視圖名 ? WHERE子句中的條件 ? HAVING短語(yǔ)中的條件 動(dòng)態(tài) SQL(續(xù)) 4. 常用動(dòng)態(tài) SQL語(yǔ)句 ? EXECUTE IMMEDIATE ? PREPARE ? EXECUTE ? DESCRIBE ? 使用動(dòng)態(tài) SQL技術(shù)更多的是涉及程序設(shè)計(jì)方面的知識(shí),而不是 SQL語(yǔ)言本身 小結(jié)(續(xù)) 嵌入式 SQL ? 與主語(yǔ)言的通信方式 1. SQL通信區(qū) ? 向主語(yǔ)言傳遞 SQL語(yǔ)句的執(zhí)行狀態(tài)信息 2. 主變量 ? 1)主語(yǔ)言向 SQL語(yǔ)句提供參數(shù) ? 2)將 SQL語(yǔ)句查詢(xún)數(shù)據(jù)庫(kù)的結(jié)果交主語(yǔ)言進(jìn)一步處理 3. 游標(biāo) ? 解決集合性操作語(yǔ)言與過(guò)程性操作語(yǔ)言的不匹配 小結(jié)(續(xù)) 嵌入式 SQL(續(xù) ) ? 靜態(tài) SQL ?不用游標(biāo) ? 不需要返回結(jié)果數(shù)據(jù)的 SQL語(yǔ)句 ? 只返回一條結(jié)果的 SQL語(yǔ)句 ?使用游標(biāo) ? 說(shuō)明游標(biāo) ? 打開(kāi)游標(biāo) ? 推進(jìn)游標(biāo)并取當(dāng)前記錄 ? 關(guān)閉游標(biāo) ? 動(dòng)態(tài) SQL 第七章 數(shù)據(jù)庫(kù)設(shè)計(jì)與編程 數(shù)據(jù)庫(kù)設(shè)計(jì)概述 需求分析 概念結(jié)構(gòu)設(shè)計(jì) 邏輯結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫(kù)的物理設(shè)計(jì) 數(shù)據(jù)庫(kù)實(shí)施和維護(hù) 嵌入式 SQL 存儲(chǔ)過(guò)程 ODBC編程 存儲(chǔ)過(guò)程 ? 建立存儲(chǔ)過(guò)程可以指定所使用的程序設(shè)計(jì)語(yǔ)言。 ? 存儲(chǔ)過(guò)程經(jīng)編譯和優(yōu)化后存儲(chǔ)在數(shù)據(jù)庫(kù)服務(wù)器中,可以被反復(fù)調(diào)用,運(yùn)行速度較快。 ? 存儲(chǔ)過(guò)程降低了客戶(hù)機(jī)和服務(wù)器之間的通信量。 ? 方便實(shí)施企業(yè)規(guī)則。 存儲(chǔ)過(guò)程(續(xù)) ? 由于各個(gè) RDBMS產(chǎn)品提供的 PL/SQL和存儲(chǔ)過(guò)程的語(yǔ)法不盡相同,讀者在使用時(shí)瑤認(rèn)真閱讀產(chǎn)品手冊(cè)。 第七章 數(shù)據(jù)庫(kù)設(shè)計(jì)與編程 數(shù)據(jù)庫(kù)設(shè)計(jì)概述 需求分析 概念結(jié)構(gòu)設(shè)計(jì) 邏輯結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫(kù)的物理設(shè)計(jì) 數(shù)據(jù)庫(kù)實(shí)施和維護(hù) 嵌入式 SQL 存儲(chǔ)過(guò)程 ODBC編程 ODBC編程 許多應(yīng)用程序需要共享多個(gè)部門(mén)的數(shù)據(jù)資源,訪(fǎng)問(wèn)不同的 RDBMS。為此,人們開(kāi)始研究和開(kāi)發(fā)連接不同 RDBMS的方法、技術(shù)和軟件,使數(shù)據(jù)庫(kù)系統(tǒng)“開(kāi)放”,能夠“數(shù)據(jù)庫(kù)互連”。 ODBC使微軟公司開(kāi)放服務(wù)體系中有關(guān)數(shù)據(jù)庫(kù)的一個(gè)組成部分,它建立了一組規(guī)范,并提供一組訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn) API。 作為規(guī)范它具有兩重功效或約束力:一方面規(guī)范應(yīng)用開(kāi)發(fā),另一方面規(guī)范 RDBMS應(yīng)用接口。 ODBC工作原理 ? 一、 ODBC體系結(jié)構(gòu) ? 二、 ODBC API ? 三、 ODBC工作流程 一、 ODBC體系結(jié)構(gòu) 由四部分構(gòu)成: ? 用戶(hù)應(yīng)用程序 ? 驅(qū)動(dòng)程序管理器、 ? 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序 ? 數(shù)據(jù)源。 用戶(hù)應(yīng)用程序 應(yīng)用程序提供用戶(hù)界面、應(yīng)用邏輯和事務(wù)邏輯。使用 ODBC開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序時(shí),應(yīng)用程序調(diào)用標(biāo)準(zhǔn)的 ODBC函數(shù)和 SQL語(yǔ)句。包括的內(nèi)容有: ? 請(qǐng)求連接數(shù)據(jù)庫(kù); ? 向數(shù)據(jù)源發(fā)送 SQL語(yǔ)句; ? 為 SQL語(yǔ)句執(zhí)行結(jié)果分配存儲(chǔ)空間,定義所讀取的數(shù)據(jù)格式; ? 獲取數(shù)據(jù)庫(kù)操作結(jié)果,或處理錯(cuò)誤; ? 進(jìn)行數(shù)據(jù)處理并向用戶(hù)提交處理結(jié)果; ? 請(qǐng)求事務(wù)的提交和回滾操作; ? 斷開(kāi)與數(shù)據(jù)源的連接。 驅(qū)動(dòng)程序管理器 驅(qū)動(dòng)程序管理器是用來(lái)管理各種驅(qū)動(dòng)程序的,由微軟提供,包含在 ,對(duì)用戶(hù)是透明的。它管理應(yīng)用程序和驅(qū)動(dòng)程序之間的通信。 ODBC驅(qū)動(dòng)程序管理器可以建立、配置或刪除數(shù)據(jù)源,并查看系統(tǒng)當(dāng)前所安裝的數(shù)據(jù)庫(kù)ODBC驅(qū)動(dòng)程序。 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序 提供應(yīng)用系統(tǒng)與數(shù)據(jù)庫(kù)平臺(tái)的獨(dú)立性。 應(yīng)用程序不能直接存取數(shù)據(jù)庫(kù),其各種操作請(qǐng)求由驅(qū)動(dòng)程序管理器提交給 RDBMS的 ODBC驅(qū)動(dòng)程序,通過(guò)調(diào)用驅(qū)動(dòng)程序所支持的函數(shù)來(lái)存取數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)的操作結(jié)果也通過(guò)驅(qū)動(dòng)程序返回給應(yīng)用程序。如果應(yīng)用程序要操縱不同的數(shù)據(jù)庫(kù),就要?jiǎng)討B(tài)地鏈接到不同的驅(qū)動(dòng)程序上。 ODBC數(shù)據(jù)源管理 數(shù)據(jù)源是最終用戶(hù)需要訪(fǎng)問(wèn)的數(shù)據(jù),包含了數(shù)據(jù)庫(kù)位置和數(shù)據(jù)庫(kù)類(lèi)型等信息,實(shí)際上是一種數(shù)據(jù)連接的抽象。 數(shù)據(jù)源不是數(shù)據(jù)庫(kù)系統(tǒng),而是用于表達(dá)一個(gè) ODBC驅(qū)動(dòng)程序和 DBMS特殊連接的命名。數(shù)據(jù)源對(duì)最終用戶(hù)是透明的。 數(shù)據(jù)源分三類(lèi):用戶(hù)數(shù)據(jù)源、系統(tǒng)數(shù)據(jù)源、文件數(shù)據(jù)源 二、 ODBC API 各個(gè)數(shù)據(jù)庫(kù)產(chǎn)商的 ODBC應(yīng)用程序接口( ODBC API)都要符合兩方面的一致性: API一致性 語(yǔ)法一致性 ODBC API(續(xù)) 由一些函數(shù)組成,通過(guò)調(diào)用相應(yīng)函數(shù)來(lái)實(shí)現(xiàn)開(kāi)放數(shù)據(jù)庫(kù)的連接功能。接口函數(shù)大致分為如下幾組: ? 分配和釋放環(huán)境句柄、連接句柄、語(yǔ)句句柄 ? 連接函數(shù) ? 與信息相關(guān)函數(shù) ? 事務(wù)處理函數(shù) ? 錯(cuò)誤處理及其他的 ? 執(zhí)行 SQL語(yǔ)句相關(guān)的 三、 ODBC工作流程 使用 ODBC的應(yīng)用系統(tǒng)大致的工作流程,從開(kāi)始配置數(shù)據(jù)源到回收各種句柄,如圖所示。 ODBC工作流程(續(xù)) 配置數(shù)據(jù)源 動(dòng)態(tài)配置數(shù)據(jù)源 初始化環(huán)境 結(jié)果集處理 建立連接 分配語(yǔ)句句柄 執(zhí)行 SQL語(yǔ)句 有無(wú)結(jié)果集 終止 有 無(wú) 使用 ODBC開(kāi)發(fā)應(yīng)用系統(tǒng)實(shí)例 ? 見(jiàn) P253258 小結(jié) ? 使用 ODBC使得應(yīng)用系統(tǒng)的移植變得容易 ? 使用 ODBC可以使得應(yīng)用系統(tǒng)的開(kāi)發(fā)與數(shù)據(jù)庫(kù)平臺(tái)的選擇、數(shù)據(jù)庫(kù)設(shè)計(jì)等工作并行進(jìn)行。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1