• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于游標(biāo)的元組重構(gòu)應(yīng)用研究

      2016-12-16 01:07:16許俊
      關(guān)鍵詞:游標(biāo)元組學(xué)號(hào)

      許俊

      (四川職業(yè)技術(shù)學(xué)院計(jì)算機(jī)科學(xué)系,四川 遂寧 629000)

      基于游標(biāo)的元組重構(gòu)應(yīng)用研究

      許俊

      (四川職業(yè)技術(shù)學(xué)院計(jì)算機(jī)科學(xué)系,四川遂寧629000)

      抽取數(shù)據(jù)庫關(guān)系模式的多個(gè)元組的多個(gè)屬性值進(jìn)行重構(gòu),得到單個(gè)元組單一屬性的實(shí)體表示.本文以三個(gè)模式為實(shí)例,詳細(xì)分析了這類關(guān)系模式的結(jié)構(gòu),設(shè)計(jì)元組重構(gòu)算法,并基于游標(biāo)方案實(shí)現(xiàn).

      數(shù)據(jù)庫;元組;重構(gòu);游標(biāo)

      1 關(guān)系模式設(shè)計(jì)及需求

      關(guān)系模式Student、Course、ChooseCourse的設(shè)計(jì)如下:

      Student表設(shè)計(jì)

      Course表

      ChooseCourse表

      三個(gè)模式的關(guān)系圖如下:

      圖中ChooseCourse為外鍵表,Student ID引用Student(student ID),CourseID引 用Course(CourseID).

      三個(gè)模式實(shí)例的模擬數(shù)據(jù)如下:

      student表

      CourseName表

      ChooseCourse表

      由三張表的模擬數(shù)據(jù)生成需求成績報(bào)表,把每個(gè)學(xué)生的選修課程、成績組合成單一列,再與學(xué)號(hào)、姓名、名次、平均分四列重構(gòu)為單一元組,其模擬形式如下:

      ?

      依據(jù)報(bào)表形式,設(shè)計(jì)成績報(bào)表Repor ts關(guān)系模式如下:

      ?

      2 關(guān)系模式分析

      在ChooseCourse表中存放了學(xué)生學(xué)號(hào)Student ID、課程編號(hào)CourseID、課程成績Mark,Student表和Course表與ChooseCourse表之間都是1:n關(guān)系,即一個(gè)學(xué)生可選修多門課,在ChooseC-ourse表有該學(xué)生多條選課成績記錄,一門課可被多名學(xué)生選修,在ChooseCourse表有該課程的多條學(xué)生成績記錄.Repor ts表一行記錄的學(xué)號(hào)、姓名直接引用Student表可得,名次和平均分是對(duì)ChooseCourse表Mark列直接計(jì)算、排名得到,科目詳細(xì)列必須是某個(gè)學(xué)生實(shí)體的全部選修課程名和成績完整組合.成績報(bào)表Repor ts將來可以鏈接到MSWord進(jìn)行郵件合并打印每個(gè)學(xué)生成績單,或發(fā)送Emai l,也能夠?yàn)镸SExcel提供數(shù)據(jù)源,方便用戶二次數(shù)據(jù)透視.

      3 元組重構(gòu)的算法

      成績?cè)M數(shù)據(jù)重構(gòu)就是提取關(guān)系模式ChooseCourse中多個(gè)元組、多個(gè)屬性值重新組合為單一元組、單一屬性的過程.其算法流程圖如左:

      數(shù)據(jù)重構(gòu)算法為雙重循環(huán)結(jié)構(gòu).首先查詢計(jì)算全部學(xué)生的學(xué)號(hào)、名次、平均分,在外層循環(huán)依次提取每個(gè)學(xué)號(hào),然后傳入內(nèi)層循環(huán),作為條件,查詢一個(gè)學(xué)生關(guān)聯(lián)元組的所有選修課程名、成績,重構(gòu)為該學(xué)生的科目詳細(xì)描述屬性,最后在外層循環(huán)把此單一屬性值與學(xué)號(hào)、名次、平均分重構(gòu)為單一元組,即為一個(gè)學(xué)生的成績記錄.當(dāng)外層循環(huán)執(zhí)行完畢后,每個(gè)學(xué)生的成績記錄作為單一元組重構(gòu)成功.

      4 元組重構(gòu)的T-SQL實(shí)現(xiàn)代碼

      因?yàn)閷?duì)于每一個(gè)學(xué)號(hào)Student ID列值,在查詢到與其匹配的集合后,必須逐行取出CourseName和Mark,單獨(dú)處理一行,故用基于游標(biāo)的解決方案實(shí)現(xiàn).

      --內(nèi)層游標(biāo),以外層游標(biāo)的Student ID作為內(nèi)層游標(biāo)的查詢參數(shù),查詢姓名、課程名、成績.

      實(shí)現(xiàn)代碼采用游標(biāo)雙重嵌套,外層游標(biāo)查詢學(xué)號(hào)、名次、平均分,內(nèi)層游標(biāo)組合課程名和成績?yōu)榭颇吭敿?xì)描述單一屬性.每個(gè)學(xué)生的選修成績記錄在外層游標(biāo)的最后完整組合,持久化到Repor ts表.

      [1]許俊.對(duì)非1NF關(guān)系查詢的探討[J].四川職業(yè)技術(shù)學(xué)院學(xué)報(bào),2013,(5)

      [2]許俊.對(duì)Oracle多表關(guān)聯(lián)更新的應(yīng)用研究[J].四川職業(yè)技術(shù)學(xué)院學(xué)報(bào),2015,(2)

      [3]蘇冠賢.數(shù)據(jù)庫游標(biāo)對(duì)檔案著錄的創(chuàng)新[J].云南檔案, 2010,(12).

      責(zé)任編輯:張隆輝

      TP311

      A

      1672-2094(2016)04-0177-03

      2016-06-12

      四川省教育廳重點(diǎn)科研項(xiàng)目《基于NoSQL大數(shù)據(jù)技術(shù)的信息搜索方案研究》(編號(hào):15ZA0348)、《網(wǎng)絡(luò)大數(shù)據(jù)測試基準(zhǔn)研究》(編號(hào):15ZA0349)成果之一.

      許俊(1969-),男,四川蓬溪人,四川職業(yè)技術(shù)學(xué)院副教授,碩士.研究方向:軟件工程.

      猜你喜歡
      游標(biāo)元組學(xué)號(hào)
      MySQL數(shù)據(jù)庫下游標(biāo)的設(shè)計(jì)與應(yīng)用
      Python核心語法
      測量不確定度在游標(biāo)式輪對(duì)內(nèi)距尺檢定裝置中的應(yīng)用
      海量數(shù)據(jù)上有效的top-kSkyline查詢算法*
      我們來打牌
      嘗試親歷的過程,感受探究的快樂
      基于減少檢索的負(fù)表約束優(yōu)化算法
      學(xué)生學(xué)號(hào)的妙用
      SQL數(shù)據(jù)庫中基于游標(biāo)的數(shù)據(jù)更新
      電腦與電信(2015年9期)2015-04-16 01:30:10
      與56號(hào)說再見
      东至县| 黄陵县| 梁山县| 仁怀市| 博客| 城固县| 阳高县| 自治县| 邻水| 宾阳县| 五华县| 阿坝县| 汉中市| 衡阳市| 穆棱市| 扬中市| 潜山县| 敦化市| 乐至县| 通山县| 平阴县| 白山市| 修武县| 东山县| 阜新市| 上犹县| 故城县| 武功县| 文登市| 晋州市| 广平县| 新邵县| 崇文区| 静海县| 西平县| 藁城市| 日照市| 永德县| 台东市| 广水市| 绥德县|