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

正文內(nèi)容

第七章數(shù)據(jù)庫設(shè)計(jì)與編程-展示頁

2024-11-05 14:51本頁面
  

【正文】 數(shù)據(jù)定義 可執(zhí)行語句 數(shù)據(jù)控制 數(shù)據(jù)操縱 ? 允許出現(xiàn)可執(zhí)行的高級(jí)語言語句的地方,都可以寫可執(zhí)行 SQL語句 ? 允許出現(xiàn)說明語句的地方,都可以寫說明性 SQL語句 嵌入式 SQL語句與 主語言之間的通信 將 SQL嵌入到高級(jí)語言中混合編程,程序中會(huì)含 有兩種不同計(jì)算模型的語句 ? SQL語句 ? 描述性的面向集合的語句 ? 負(fù)責(zé)操縱數(shù)據(jù)庫 ? 高級(jí)語言語句 ? 過程性的面向記錄的語句 ? 負(fù)責(zé)控制程序流程 工作單元之間的通信方式 1. SQL通信區(qū) 向主語言傳遞 SQL語句的執(zhí)行狀態(tài)信息 主語言能夠據(jù)此控制程序流程 2. 主變量 1)主語言向 SQL語句提供參數(shù) 2)將 SQL語句查詢數(shù)據(jù)庫的結(jié)果交主語言進(jìn)一步處理 3. 游標(biāo) 解決集合性操作語言與過程性操作語言的不匹配 1. SQL通信區(qū) ? SQLCA: SQL Communication Area ? SQLCA是一個(gè)數(shù)據(jù)結(jié)構(gòu) ? SQLCA的用途 ? SQL語句執(zhí)行后, DBMS反饋給應(yīng)用程序信息 ? 描述系統(tǒng)當(dāng)前工作狀態(tài) ? 描述運(yùn)行環(huán)境 ? 這些信息將送到 SQL通信區(qū) SQLCA中 ? 應(yīng)用程序從 SQLCA中取出這些狀態(tài)信息,據(jù)此決定接下來執(zhí)行的語句 SQLCA的內(nèi)容 ? 與所執(zhí)行的 SQL語句有關(guān) ? 與該 SQL語句的執(zhí)行情況有關(guān) 例:在執(zhí)行刪除語句 DELETE后,不同的執(zhí)行情況,SQLCA中有不同的信息: ? 違反數(shù)據(jù)保護(hù)規(guī)則,操作拒絕 ? 沒有滿足條件的行,一行也沒有刪除 ? 成功刪除,并有刪除的行數(shù) ? 無條件刪除警告信息 ? 由于各種原因,執(zhí)行出錯(cuò) SQLCA的使用方法 ? 定義 SQLCA ? 用 EXEC SQL INCLUDE SQLCA加以定義 ? 使用 SQLCA ?SQLCA中有一個(gè)存放每次執(zhí)行 SQL語句后返回代碼的變量 SQLCODE ?如果 SQLCODE等于預(yù)定義的常量 SUCCESS,則表示 SQL語句成功,否則表示出錯(cuò) ?應(yīng)用程序每執(zhí)行完一條 SQL 語句之后都應(yīng)該測試一下 SQLCODE的值,以了解該 SQL語句執(zhí)行情況并做相應(yīng)處理 2. 主變量 ?什么是主變量 ? 嵌入式 SQL語句中可以使用主語言的程序變量來輸入或輸出數(shù)據(jù) ? 在 SQL語句中使用的主語言程序變量簡稱為主變量( Host Variable) 主變量(續(xù)) ?主變量的類型 ? 輸入主變量 ?由應(yīng)用程序?qū)ζ滟x值, SQL語句引用 ? 輸出主變量 ?由 SQL語句賦值或設(shè)置狀態(tài)信息,返回給應(yīng)用程序 ? 一個(gè)主變量有可能既是輸入主變量又是輸出主變量 主變量(續(xù)) ? 主變量的用途 ? 輸入主變量 ? 指定向數(shù)據(jù)庫中插入的數(shù)據(jù) ? 將數(shù)據(jù)庫中的數(shù)據(jù)修改為指定值 ? 指定執(zhí)行的操作 ? 指定 WHERE子句或 HAVING子句中的條件 ? 輸出主變量 ? 獲取 SQL語句的結(jié)果數(shù)據(jù) ? 獲取 SQL語句的執(zhí)行狀態(tài) 主變量(續(xù)) ? 指示變量 ? 一個(gè)主變量可以附帶一個(gè)指示變量( Indicator Variable) ? 什么是指示變量 ?整型變量 ?用來“指示”所指主變量的值或條件 ? 指示變量的用途 ?輸入主變量可以利用指示變量賦空值 ?輸出主變量可以利用指示變量檢測出是否空值,值是否被截?cái)? 主變量(續(xù)) ? 在 SQL語句中使用主變量和指示變量的方法 ? 1) 說明主變量和指示變量 BEGIN DECLARE SECTION ......... ......... (說明主變量和指示變量 ) ......... END DECLARE SECTION 主變量(續(xù)) ? 2) 使用主變量 ?說明之后的主變量可以在 SQL語句中任何一個(gè)能夠使用表達(dá)式的地方出現(xiàn) ?為了與數(shù)據(jù)庫對(duì)象名(表名、視圖名、列名等)區(qū)別, SQL語句中的主變量名前要加冒號(hào)( :)作為標(biāo)志 主變量(續(xù)) ? 3) 使用指示變量 ? 指示變量前也必須加冒號(hào)標(biāo)志 ? 必須緊跟在所指主變量之后 主變量(續(xù)) ? 在 SQL語句之外 (主語言語句中 )使用主變量和指示變量的方法 ? 可以直接引用,不必加冒號(hào) 3. 游標(biāo)( cursor) ? 為什么要使用游標(biāo) ? SQL語言與主語言具有不同數(shù)據(jù)處理方式 ? SQL語言是面向集合的,一條 SQL語句原則上可以產(chǎn)生或處理多條記錄 游標(biāo)(續(xù)) ? 主語言是面向記錄的,一組主變量一次只能存放一條記錄 ? 僅使用主變量并不能完全滿足 SQL語句向應(yīng)用程序輸出數(shù)據(jù)的要求 ? 嵌入式 SQL引入了游標(biāo)的概念,用來協(xié)調(diào)這兩種不同的處理方式 游標(biāo)(續(xù)) ? 什么是游標(biāo) ? 游標(biāo)是系統(tǒng)為用戶開設(shè)的一個(gè)數(shù)據(jù)緩沖區(qū),存放 SQL語句的執(zhí)行結(jié)果 ? 每個(gè)游標(biāo)區(qū)都有一個(gè)名字 ? 用戶可以用 SQL語句逐一從游標(biāo)中獲取記錄,并賦給主變量,交由主語言進(jìn)一步處理 嵌入式 SQL語句與主語言之間的通信 (續(xù) ) ? 小結(jié) ? 在嵌入式 SQL中, SQL語句與主語言語句分工非常明確 ? SQL語句:直接與數(shù)據(jù)庫打交道 ? 主語言語句 1. 控制程序流程 2. 對(duì) SQL語句的執(zhí)行結(jié)果做進(jìn)一步 加工處理 嵌入式 SQL語句與主語言之間的通信 (續(xù) ) ? SQL語句用主變量從主語言中接收?qǐng)?zhí)行參數(shù),操縱數(shù)據(jù)庫 ? SQL語句的執(zhí)行狀態(tài)由 DBMS送至 SQLCA中 ? 主語言程序從 SQLCA中取出狀態(tài)信息,據(jù)此決定下一步操作 ? 如果 SQL語句從數(shù)據(jù)庫中成功地檢索出數(shù)據(jù),則通過主變量傳給主語言做進(jìn)一步處理 ? SQL語言和主語言的不同數(shù)據(jù)處理方式通過游標(biāo)來協(xié)調(diào) 嵌入式 SQL語句與主語言之間的通信 (續(xù) ) 例:帶有嵌入式 SQL的一小段 C程序 ............ EXEC SQL INCLUDE SQLCA。 例: EXEC SQL DROP TABLE Student。第七章 數(shù)據(jù)庫設(shè)計(jì)與編程 數(shù)據(jù)庫設(shè)計(jì)概述 需求分析 概念結(jié)構(gòu)設(shè)計(jì) 邏輯結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫的物理設(shè)計(jì) 數(shù)據(jù)庫實(shí)施和維護(hù) 嵌入式 SQL 存儲(chǔ)過程 ODBC編程 數(shù)據(jù)庫編程 ? 應(yīng)用系統(tǒng)中使用 SQL編程來訪問和管理數(shù)據(jù)庫中數(shù)據(jù)的方式主要有:嵌入式 SQL( ESQL)、存儲(chǔ)過程(過程語言 SQL)、ODBC(開放數(shù)據(jù)庫連接)、 JDBC( Java數(shù)據(jù)庫連接)、 OLEDB(對(duì)象連接與嵌入數(shù)據(jù)庫)等方式。 嵌 入 式 SQL ? SQL語言提供了兩種不同的使用方式: ? 交互式 ? 嵌入式 ? 為什么要引入嵌入式 SQL ? SQL語言是非過程性語言 ? 事務(wù)處理應(yīng)用需要高級(jí)語言 ? 這兩種方式細(xì)節(jié)上有差別,在程序設(shè)計(jì)的環(huán)境下,SQL語句要做某些必要的擴(kuò)充 嵌 入 式 SQL 嵌入式 SQL的一般形式 嵌入式 SQL語句與主語言之間的通信 不用游標(biāo)的 SQL語句 使用游標(biāo)的 SQL語句 動(dòng)態(tài) SQL簡介 SQL的一般形式 ? 為了區(qū)分 SQL語句與主語言語句,需要 : ?前綴: EXEC SQL ? 結(jié)束標(biāo)志:隨主語言的不同而不同 ? 以 C為主語言的嵌入式 SQL語句的一般形式 EXEC SQL SQL語句 。 ? 以 COBOL作為主語言的嵌入式 SQL語句的一般形式 EXEC SQL SQL語句 ENDEXEC 例: EXEC SQL DROP TABLE Student ENDEXEC DBMS處理宿主型數(shù)據(jù)庫 語言 SQL 的方法 ? 預(yù)編譯 ? 修改和擴(kuò)充主語言使之能處理 SQL語句 預(yù)編譯 1. 由 DBMS的預(yù)處理程序?qū)υ闯绦蜻M(jìn)行掃描,識(shí)別出 SQL語句 2.把它們 轉(zhuǎn)換 成主語言調(diào)用語句,以使主語言編譯程序能識(shí)別它 3.最后由主語言的編譯程序?qū)⒄麄€(gè)源程序 編譯成目標(biāo)碼。 /* (1) 定義 SQL通信區(qū) */ EXEC SQL BEGIN DECLARE SECTION。 CHAR title(81)。 EXEC SQL END DECLARE SECTION。 /* (3) 游標(biāo)操作(定義游標(biāo)) */ /* 從 titles表中查詢 tit_id, tit, roy */ EXEC SQL OPEN C1。) { EXEC SQL FETCH C1 INTO :title_id, :title, :royalty。 printf(Title ID: %s, Royalty: %d, :title_id, :royalty)。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1