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

正文內(nèi)容

第四章sql-資料下載頁(yè)

2025-08-01 13:35本頁(yè)面
  

【正文】 思考一: grant可以基于列授權(quán) , 當(dāng) revoke這樣的權(quán)限時(shí) , 結(jié)果是什么 ? ? 思考二:執(zhí)行完下列語(yǔ)句的結(jié)果是什么 ? revoke all on S from public grant select on S to public 有些支持多庫(kù)的數(shù)據(jù)庫(kù)系統(tǒng)中授權(quán)對(duì)象還可以是數(shù)據(jù)庫(kù): grant 數(shù)據(jù)庫(kù)級(jí)權(quán)限 to {用戶(hù) [,用戶(hù) ]… | public} SQL數(shù)據(jù)控制功能( Ⅳ ) 數(shù)據(jù)庫(kù)級(jí)權(quán)限包括: connect:允許用戶(hù)在 database語(yǔ)句中指定數(shù)據(jù)庫(kù) 。 resource: connect權(quán)限 + 建表 、 刪除表及索引權(quán)利 。 dba: resource權(quán)限 + 授予或撤消其他用戶(hù)的 connect、resource、 dba權(quán)限。不允許 dba撤消自己的 dba權(quán)限。 思考: 如何使 dba撤消自己的 dba權(quán)限 ? 嵌入式 SQL ? 為什么使用嵌入式 SQL? ? 有些操作對(duì)于交互式 SQL是 不可能的任務(wù) 。 SQL的表達(dá)能力相比高級(jí)語(yǔ)言有一定的限制 , 有些數(shù)據(jù)訪問(wèn)要求單純使用 SQL無(wú)法完成 。 一方面 ,SQL在逐漸增強(qiáng)自己的表達(dá)能力 ( 參見(jiàn)習(xí)題 ) ,另一方面 , 太多的擴(kuò)展會(huì)導(dǎo)致優(yōu)化能力及執(zhí)行效率的降低 。 ? 非聲明性動(dòng)作 實(shí)際的應(yīng)用系統(tǒng)是非常復(fù)雜的 , 數(shù)據(jù)庫(kù)訪問(wèn)只是其中一個(gè)部件 。 有些動(dòng)作如與用戶(hù)交互 、 圖形化顯示數(shù)據(jù)等只能用高級(jí)語(yǔ)言實(shí)現(xiàn) 。 嵌入式 SQL執(zhí)行過(guò)程 主語(yǔ)言 + 嵌入 SQL 預(yù)處理 主語(yǔ)言 + 函數(shù)調(diào)用 主語(yǔ)言編譯器 主語(yǔ)言執(zhí)行程序 需要解決的幾個(gè)問(wèn)題( Ⅰ ) ? 區(qū)分 SQL語(yǔ)句與 C語(yǔ)言語(yǔ)句 嵌入的 SQL語(yǔ)句以 EXEC SQL開(kāi)始 , 以分號(hào) (。) 或END_EXEX結(jié)束 。 EXEC SQL delete from PROF where DNO = 10; ? 嵌入 SQL語(yǔ)句與 C語(yǔ)言之間的數(shù)據(jù)傳遞 ? 宿主變量 C變量,既可以用在 C語(yǔ)句中,也可用在 SQL語(yǔ)句中,用來(lái)在兩者之間傳遞數(shù)據(jù) 。 需要解決的幾個(gè)問(wèn)題( Ⅱ ) 宿主變量的聲明:聲明為通常的 C變量,并將其放在下列標(biāo)識(shí)語(yǔ)句之間, EXEC SQL BEGIN DECLARE SECTION EXEC SQL END DECLARE SECTION EXEC SQL BEGIN DECLARE SECTION int prof_no。 char prof_name[30]。 int salary。 EXEC SQL END DECLARE SECTION 需要解決的幾個(gè)問(wèn)題( Ⅲ ) 注:宿主變量出現(xiàn)于 SQL語(yǔ)句中時(shí) , 前面加 ( :) 以區(qū)別列名 。 宿主變量可出現(xiàn)的地方: SQL的數(shù)據(jù)操縱語(yǔ)句中可出現(xiàn) 常數(shù) 的任何地方 , select, fetch等語(yǔ)句的 into字句中 。 示例: EXEC SQL select PNAME , SAL into :prof_name , :salary from PROF where PNO = prof_no 。 需要解決的幾個(gè)問(wèn)題( Ⅳ ) ? 指示變量 C變量 , 用來(lái)指示返回給宿主變量的值是否為 null值 ,以及返回給宿主變量的字符串是否發(fā)生了截?cái)?。 應(yīng)用場(chǎng)合:如果一個(gè)宿主變量所對(duì)應(yīng)的數(shù)據(jù)庫(kù)字段允許空值 , 或字符串類(lèi)型的宿主變量的長(zhǎng)度可能小于所對(duì)應(yīng)的數(shù)據(jù)庫(kù)字段的長(zhǎng)度 , 則需要一個(gè)指示變量來(lái)指明數(shù)據(jù)庫(kù)訪問(wèn)的返回狀態(tài) 。 指示變量的返回值: = 0:取到主變量的值不空 , 沒(méi)有發(fā)生截?cái)?。 = ?1:取到主變量的值為空值 。 0:取到主變量的值發(fā)生了截?cái)?, 指示變 量的值是截?cái)嗲暗淖址膶?shí)際長(zhǎng)度 。 需要解決的幾個(gè)問(wèn)題( Ⅴ ) 指示變量的用法:聲明與宿主變量的聲明方式一樣 ,在數(shù)據(jù)操縱語(yǔ)句中 , 在宿主變量和指示變量之間加( : )或關(guān)鍵字 indicator。 EXEC SQL BEGIN DECLARE SECTION int prof_no。 char prof_name[30]。 int salary。 short name_id。 short sal_id。 EXEC SQL END DECLARE SECTION EXEC SQL select PNAME , SAL into :prof_name : name_id , :salary: sal_id from PROF where PNO = prof_no 。 需要解決的幾個(gè)問(wèn)題( Ⅵ ) ? SQL與主語(yǔ)言之間操作方式的協(xié)調(diào) SQL:一次一集合 。 C語(yǔ)言:一次一記錄 。 ? 游標(biāo):在查詢(xún)結(jié)果的記錄集合中移動(dòng)的指針 。 若一個(gè) SQL語(yǔ)句返回單個(gè)元組 , 則不用游標(biāo) 。 若一個(gè) SQL語(yǔ)句返回多個(gè)元組 , 則使用游標(biāo) 。 ? 不需要游標(biāo)的數(shù)據(jù)操作 ? 結(jié)果是一個(gè)元組的 select語(yǔ)句 EXEC SQL select PNAME , SAL into :prof_name : name_id , :salary: sal_id from PROF where PNO = prof_no 。 需要解決的幾個(gè)問(wèn)題( Ⅶ ) ? insert語(yǔ)句 EXEC SQL insert into PROF values (:prof_no, :prof_name , :salary , :dept_no , : salary) 。 ? delete語(yǔ)句 EXEC SQL delete from PROF values PNO :prof_no 。 ? update語(yǔ)句 EXEC SQL update PROF set SAL = :salary where PNO = : prof_no 。 需要解決的幾個(gè)問(wèn)題( Ⅷ ) ? 需要游標(biāo)的數(shù)據(jù)操作 當(dāng) select語(yǔ)句的結(jié)果中包含多個(gè)元組時(shí) , 使用游標(biāo)可以逐個(gè)存取這些元組 。 活動(dòng)集: selecT語(yǔ)句返回的元組的集合 。 當(dāng)前行: 活動(dòng)集中當(dāng)前處理的那一行 。 游標(biāo)即是指向當(dāng)前行的指針 。 游標(biāo)分類(lèi): ? 滾動(dòng)游標(biāo):游標(biāo)的位置可以來(lái)回移動(dòng) , 可在活動(dòng)集中取任意元組 。 ? 非滾動(dòng)游標(biāo):只能在活動(dòng)集中順序地取下一個(gè)元組 。 ? 更新游標(biāo):數(shù)據(jù)庫(kù)對(duì)游標(biāo)指向的當(dāng)前行加鎖 , 當(dāng)程序讀下一行數(shù)據(jù)時(shí) , 本行數(shù)據(jù)解鎖 , 下一行數(shù)據(jù)加鎖 。 需要解決的幾個(gè)問(wèn)題( Ⅸ ) 定義與使用游標(biāo)的語(yǔ)句 ? declare:定義一個(gè)游標(biāo) , 使之對(duì)應(yīng)一個(gè) select語(yǔ)句 。 declare 游標(biāo)名 [scroll] cursor for select語(yǔ)句 [for update [of列表名 ]] for update任選項(xiàng),表示該游標(biāo)可用于對(duì)當(dāng)前行的修改與刪除。 ? open:打開(kāi)一個(gè)游標(biāo),執(zhí)行游標(biāo)對(duì)應(yīng)的查詢(xún),結(jié)果集合為該游標(biāo)的活動(dòng)集。 open 游標(biāo)名 需要解決的幾個(gè)問(wèn)題( Ⅹ ) ? fetch :在活動(dòng)集中將游標(biāo)移到特定的行 , 并取出該行數(shù)據(jù)放到相應(yīng)的宿主變量中 。 fetch [next | prior | first | last | current | relative n | absolute m] 游標(biāo)名 into [宿主變量表 ] ? close :關(guān)閉游標(biāo) , 釋放活動(dòng)集及其所占資源 。需要再使用該游標(biāo)時(shí) , 執(zhí)行 open語(yǔ)句 。 close 游標(biāo)名 ? free:刪除游標(biāo) , 以后便不能再對(duì)該游標(biāo)執(zhí)行open語(yǔ)句了 free 游標(biāo)名 需要解決的幾個(gè)問(wèn)題( Ⅺ ) ? SQL語(yǔ)句執(zhí)行信息反饋 ? 良好的應(yīng)用程序必須提供對(duì)錯(cuò)誤的處理 ,應(yīng)用程序需要知道 SQL語(yǔ)句是否正確執(zhí)行了 , 發(fā)生錯(cuò)誤時(shí)的錯(cuò)誤代碼 , 執(zhí)行時(shí)遇到特殊情況時(shí)的警告信息 。 ? SQL通訊域 SQLCA是一結(jié)構(gòu) ,每一嵌入 SQL語(yǔ)句的執(zhí)行情況在其執(zhí)行完成后寫(xiě)入 USERCA結(jié)構(gòu)中的各變量中 , 根據(jù) SQLCA中的內(nèi)容可以獲得每一嵌入 SQL語(yǔ)句執(zhí)行后的信息 ,應(yīng)用程序就可以做相應(yīng)的處理 。 ? 為了說(shuō)明 (USERCA),必須在應(yīng)用程序中包括 : EXEC SQL INCLUDE SQLCA。 作業(yè) ? c, g, h, j
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1