国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法、裝置及系統(tǒng)與流程

      文檔序號(hào):12595493閱讀:188來(lái)源:國(guó)知局
      本申請(qǐng)涉及數(shù)據(jù)庫(kù)
      技術(shù)領(lǐng)域
      :,尤其是涉及一種數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法、裝置及系統(tǒng)。
      背景技術(shù)
      ::眾所周知,在數(shù)據(jù)庫(kù)技術(shù)中,諸如結(jié)構(gòu)化查詢(xún)語(yǔ)言(StructuredQueryLanguage,SQL)等數(shù)據(jù)庫(kù)語(yǔ)言是存取數(shù)據(jù)以及查詢(xún)、更新和管理數(shù)據(jù)庫(kù)系統(tǒng)的接口。比如,用戶(hù)在使用基于開(kāi)放數(shù)據(jù)處理服務(wù)(OpenDataProcessingService,ODPS)系統(tǒng)的過(guò)程中,可能經(jīng)常需要基于查詢(xún)語(yǔ)句查詢(xún)ODPS中數(shù)據(jù)表及其字段。而多數(shù)數(shù)據(jù)庫(kù)語(yǔ)言通??商峁┩ㄟ^(guò)特殊字符或字符串等查詢(xún)語(yǔ)句查詢(xún)所需表及其字段的功能。以SQL為例,用戶(hù)通??墒褂谩?”來(lái)查詢(xún)所需的字段。在某些情況下,往往一些所要查詢(xún)的表需申請(qǐng)查詢(xún)權(quán)限后才能訪(fǎng)問(wèn);此外,即使在已經(jīng)獲得查詢(xún)權(quán)限的情況下,如果這些表的某些字段比較特殊(比如包含有敏感信息),那么用戶(hù)一般還需要另外針對(duì)表中的特殊字段申請(qǐng)權(quán)限。然而,到目前為止,在基于腳本的任務(wù)提交執(zhí)行前,用戶(hù)通常并不知曉其所要查詢(xún)的表中是否存在某些需另外申請(qǐng)權(quán)限的字段(除非采用人工去逐個(gè)判斷所要查詢(xún)的表中是否存在某些需另外申請(qǐng)權(quán)限的字段,但這樣效率會(huì)非常低下,實(shí)際上難以實(shí)施)。在這種情況下,一旦用戶(hù)所要查詢(xún)的表中存在需另外申請(qǐng)權(quán)限的字段,必然會(huì)導(dǎo)致任務(wù)中途執(zhí)行失敗。如此以來(lái),不僅浪費(fèi)了系統(tǒng)資源,也降低了用戶(hù)體驗(yàn)。技術(shù)實(shí)現(xiàn)要素:本申請(qǐng)實(shí)施例的目的在于提供一種數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法、裝置及系統(tǒng)。為達(dá)到上述目的,一方面,本申請(qǐng)實(shí)施例提供了一種數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法,包括以下步驟:獲取用戶(hù)提交的操作語(yǔ)言腳本;對(duì)所述操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析,獲得所述用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表及其字段的標(biāo)識(shí)或名稱(chēng);判斷所述用戶(hù)是否有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限;如果所述用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限,則為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)。另一方面,本申請(qǐng)還提供了一種數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置,包括:腳本獲取模塊,用于獲取用戶(hù)提交的操作語(yǔ)言腳本;語(yǔ)法分析模塊,用于對(duì)所述操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析,獲得所述用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表及其字段的標(biāo)識(shí)或名稱(chēng);權(quán)限控制模塊,用于判斷所述用戶(hù)是否有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限;權(quán)限申請(qǐng)模塊,用于當(dāng)所述用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)。再一方面,本申請(qǐng)還提供了一種數(shù)據(jù)庫(kù)系統(tǒng),其包括數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置,所述數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置包括:腳本獲取模塊,用于獲取用戶(hù)提交的操作語(yǔ)言腳本;語(yǔ)法分析模塊,用于對(duì)所述操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析,獲得所述用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表及其字段的標(biāo)識(shí)或名稱(chēng);權(quán)限控制模塊,用于判斷所述用戶(hù)是否有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限;權(quán)限申請(qǐng)模塊,用于當(dāng)所述用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)。本申請(qǐng)實(shí)施例中,當(dāng)用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),就會(huì)自動(dòng)為該用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限的申請(qǐng);在成功申請(qǐng)權(quán)限后,該用戶(hù)在下次訪(fǎng)問(wèn)時(shí)就能使用該數(shù)據(jù)表及其字段了,通過(guò)上述腳本提交執(zhí)行前的預(yù)處理,避免了腳本執(zhí)行過(guò)程中因缺少相應(yīng)的訪(fǎng)問(wèn)權(quán)限而導(dǎo)致的中途失敗,從而減少了計(jì)算資源及用戶(hù)時(shí)間的浪費(fèi),提高了用戶(hù)體驗(yàn)。附圖說(shuō)明此處所說(shuō)明的附圖用來(lái)提供對(duì)本申請(qǐng)實(shí)施例的進(jìn)一步理解,構(gòu)成本申請(qǐng)實(shí)施例的一部分,并不構(gòu)成對(duì)本申請(qǐng)實(shí)施例的限定。在附圖中:圖1為本申請(qǐng)一實(shí)施例的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法的流程圖;圖2為本申請(qǐng)另一實(shí)施例的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法的流程圖;圖3為本申請(qǐng)一實(shí)施例的數(shù)據(jù)庫(kù)系統(tǒng)的架構(gòu)圖;圖4為本申請(qǐng)一實(shí)施例的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置的結(jié)構(gòu)框圖;圖5為本申請(qǐng)另一實(shí)施例的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置的結(jié)構(gòu)框圖。具體實(shí)施方式為使本申請(qǐng)實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下面結(jié)合實(shí)施例和附圖,對(duì)本申請(qǐng)實(shí)施例做進(jìn)一步詳細(xì)說(shuō)明。在此,本申請(qǐng)實(shí)施例的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng)實(shí)施例,但并不作為對(duì)本申請(qǐng)實(shí)施例的限定。下面結(jié)合附圖,對(duì)本申請(qǐng)實(shí)施例的具體實(shí)施方式作進(jìn)一步的詳細(xì)說(shuō)明。本申請(qǐng)實(shí)施例可用于通用或?qū)S糜?jì)算裝置環(huán)境或配置中,例如多處理器裝置、服務(wù)器計(jì)算機(jī)以及分布式計(jì)算環(huán)境等等。并且本申請(qǐng)實(shí)施例可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的上下文中描述,例如程序模塊或指令集。這些程序模塊或指令集可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地或遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。參考圖1所示,本申請(qǐng)一實(shí)施例的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法包括以下步驟:S101、獲取用戶(hù)提交的操作語(yǔ)言腳本。本申請(qǐng)實(shí)施例中,一般的,用戶(hù)提交的操作語(yǔ)言腳本可以是基于用戶(hù)層面的查詢(xún)、修改、插入、排序和刪除等訪(fǎng)問(wèn)操作中的任意一種或多種。并且,本申請(qǐng)實(shí)施例中,數(shù)據(jù)庫(kù)操作語(yǔ)言可包括但不限于SQL、PL-SQL(ProceduralLanguage-SQL)和T-SQL(Transact-SQL)等。以SQL為例,一個(gè)典型的查詢(xún)腳本可以為:select*fromtable1where+范圍。S102、對(duì)所述操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析,獲得所述用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表及其字段的標(biāo)識(shí)或名稱(chēng)。本領(lǐng)域技術(shù)人員悉知,編譯的過(guò)程中涉及語(yǔ)法分析,而語(yǔ)法分析的作用是將一個(gè)輸入的字符串變換為一個(gè)描述這個(gè)字符串的結(jié)構(gòu)體(比如語(yǔ)法分析樹(shù)、抽象語(yǔ)法樹(shù)等),以使得計(jì)算機(jī)可以更容易的理解用戶(hù)輸入的字符串是何意思。由于語(yǔ)法分析屬于本領(lǐng)域技術(shù)人員常規(guī)技術(shù)手段,因此,在本申請(qǐng)實(shí)例中對(duì)于將操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析的具體過(guò)程無(wú)須進(jìn)行過(guò)多說(shuō)明。S103、判斷所述用戶(hù)是否有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限。如果沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限則執(zhí)行步驟S104。本申請(qǐng)實(shí)例中,具體判斷可以是先判斷用戶(hù)是否有訪(fǎng)問(wèn)其指定訪(fǎng)問(wèn)的數(shù)據(jù)表的權(quán)限,只有用戶(hù)有訪(fǎng)問(wèn)其指定訪(fǎng)問(wèn)的數(shù)據(jù)表的權(quán)限的前提下,進(jìn)一步判斷該用戶(hù)是否有訪(fǎng)問(wèn)其指定訪(fǎng)問(wèn)的數(shù)據(jù)表中指定字段的權(quán)限才更有意義。下面舉例說(shuō)明:例如某一用戶(hù)提交的操作語(yǔ)言腳本為:select*fromtable1其中,table1具體如下table1姓名(NAME)性別(GENDER)年齡(AGE)身份證號(hào)碼(ID)張三男25330100000711141000李四女31330700000009190000王二女28330000000000064000劉五男22330111111111305000該用戶(hù)為普通用戶(hù),其具有訪(fǎng)問(wèn)table1的權(quán)限,但由于table1中第4字段(身份證號(hào)碼(ID))的屬于個(gè)人敏感信息,需單獨(dú)申請(qǐng)?jiān)L問(wèn)權(quán)限,此種情況,該用戶(hù)就會(huì)被判斷為沒(méi)有訪(fǎng)問(wèn)table1中第4字段的權(quán)限。S104、為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)。需要說(shuō)明的是,本步驟中所述的為用戶(hù)申請(qǐng)?jiān)L問(wèn)數(shù)據(jù)表及其字段的權(quán)限是:僅需對(duì)那些已指定訪(fǎng)問(wèn)但尚未獲得授權(quán)的部分另行發(fā)起權(quán)限申請(qǐng)即可。本申請(qǐng)的在另一實(shí)施例中,如果所述用戶(hù)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限,則在步驟S103之后還可以包括如下步驟:S105、判斷所述操作語(yǔ)言腳本中是否包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符。如果所述操作語(yǔ)言腳本中包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符,則執(zhí)行步驟S106,否則結(jié)束。在數(shù)據(jù)庫(kù)語(yǔ)言中,通配符是一種特殊語(yǔ)句,可以替代一個(gè)或多個(gè)字符,用以實(shí)現(xiàn)模糊搜索。以SQL為例,在沒(méi)有限定符時(shí),通配符“*”則代表訪(fǎng)問(wèn)所有引用表的全部字段,例如:select*fromainnerjoinbona.id=b.id;在有限定符時(shí),通配符“*”則代表訪(fǎng)問(wèn)限定表的全部字段,例如:selectb.*fromainnerjoinbona.id=b.id。S106、將所述通配符替換成所述數(shù)據(jù)表中全部字段的標(biāo)識(shí)或名稱(chēng)。這里的替換一般指的是字符串替換,以上述步驟S103中的select*fromtable1為例,替換后的操作語(yǔ)言腳本為:SelectˊNAMEˊˊGENDERˊˊAGEˊˊIDˊfromtable1如此,將用通配符“*”表示的模糊搜索替換為具體明確的字段名稱(chēng)或標(biāo)識(shí)搜索,從而有利于防止腳本執(zhí)行時(shí)出錯(cuò)。本申請(qǐng)實(shí)施例為腳本提交執(zhí)行前的預(yù)處理,當(dāng)用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),就會(huì)自動(dòng)為該用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限的申請(qǐng);在成功申請(qǐng)權(quán)限后,該用戶(hù)在下次訪(fǎng)問(wèn)時(shí)就能使用該數(shù)據(jù)表及其字段了,通過(guò)上述預(yù)處理,避免了腳本執(zhí)行過(guò)程中因缺少相應(yīng)的訪(fǎng)問(wèn)權(quán)限而導(dǎo)致的中途失敗,從而減少了計(jì)算資源及用戶(hù)時(shí)間的浪費(fèi),提高了用戶(hù)體驗(yàn)。參考圖2所示,本申請(qǐng)另一實(shí)施例的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化方法包括以下步驟:S201、獲取用戶(hù)提交的操作語(yǔ)言腳本。本申請(qǐng)實(shí)施例中,一般的,用戶(hù)提交的操作語(yǔ)言腳本可以是基于用戶(hù)層面的查詢(xún)、修改、插入、排序和刪除等訪(fǎng)問(wèn)操作中的任意一種或多種。并且,本申請(qǐng)實(shí)施例中,數(shù)據(jù)庫(kù)操作語(yǔ)言可包括但不限于SQL、PL-SQL和T-SQL。以SQL為例,一個(gè)典型的查詢(xún)腳本為:select*fromtable1where范圍。S202、對(duì)所述操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析,獲得所述用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表及其字段的標(biāo)識(shí)或名稱(chēng)。本領(lǐng)域技術(shù)人員悉知,編譯的過(guò)程中涉及語(yǔ)法分析,而語(yǔ)法分析的作用是將一個(gè)輸入的字符串變換為一個(gè)描述這個(gè)字符串的結(jié)構(gòu)體(比如語(yǔ)法分析樹(shù)、抽象語(yǔ)法樹(shù)等),以使得計(jì)算機(jī)可以更容易的理解用戶(hù)輸入的字符串是什么意思。由于語(yǔ)法分析屬于本領(lǐng)域技術(shù)人員常規(guī)技術(shù)手段,因此,在本申請(qǐng)實(shí)例中對(duì)于將操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析的具體過(guò)程無(wú)須進(jìn)行過(guò)多說(shuō)明。S203、判斷所述用戶(hù)是否有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限。如果沒(méi)有訪(fǎng)問(wèn)所述 數(shù)據(jù)表及其字段的權(quán)限則執(zhí)行步驟S204。本申請(qǐng)實(shí)例中,具體判斷可以是先判斷用戶(hù)是否有訪(fǎng)問(wèn)其指定訪(fǎng)問(wèn)的數(shù)據(jù)表的權(quán)限,只有用戶(hù)有訪(fǎng)問(wèn)其指定訪(fǎng)問(wèn)的數(shù)據(jù)表的權(quán)限的前提下,進(jìn)一步判斷該用戶(hù)是否有訪(fǎng)問(wèn)其指定訪(fǎng)問(wèn)的數(shù)據(jù)表中指定字段的權(quán)限才有意義。下面舉例說(shuō)明:例如某一用戶(hù)提交的操作語(yǔ)言腳本為:select*fromtable2其中,table2具體如下table2商品名稱(chēng)(Name)品牌(Brand)價(jià)格(Price)商家(Seller)庫(kù)存量(Stock)徒步鞋狼爪599狼爪官方旗艦店500徒步鞋探路者368探路者官方旗艦店300徒步鞋北面879北面官方旗艦店800徒步鞋哥倫比亞688哥倫比亞官方旗艦店600該用戶(hù)為普通用戶(hù),其具有訪(fǎng)問(wèn)table2的權(quán)限,但由于table2中第5字段(庫(kù)存量(Stock))的屬于敏感信息,需單獨(dú)申請(qǐng)?jiān)L問(wèn)權(quán)限,此種情況,該用戶(hù)就會(huì)被判斷為沒(méi)有訪(fǎng)問(wèn)table2中第5字段的權(quán)限。S204、向所述用戶(hù)發(fā)送權(quán)限申請(qǐng)請(qǐng)示消息。向用戶(hù)發(fā)送權(quán)限申請(qǐng)請(qǐng)示消息,可以提前告知用戶(hù)問(wèn)題原因,從而請(qǐng)示用戶(hù)是否需要發(fā)起權(quán)限申請(qǐng)。其中,向用戶(hù)發(fā)送的權(quán)限申請(qǐng)請(qǐng)示消息可以包含:請(qǐng)示是否申請(qǐng)?jiān)L問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限的信息,以及權(quán)限申請(qǐng)流程相關(guān)信息。S205、在收到所述用戶(hù)返回的權(quán)限申請(qǐng)確認(rèn)消息后,為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)。需要說(shuō)明的是,本步驟中所述的為用戶(hù)申請(qǐng)?jiān)L問(wèn)數(shù)據(jù)表及其字段的權(quán)限是:僅需對(duì)那些已指定訪(fǎng)問(wèn)但尚未獲得授權(quán)的部分另行發(fā)起權(quán)限申請(qǐng)即可。本申請(qǐng)的在另一實(shí)施例中,如果所述用戶(hù)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限,則在步驟S203之后還包括:S206、判斷所述操作語(yǔ)言腳本中是否包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符。如果所述操作語(yǔ)言腳本中包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符,則執(zhí)行步驟S207,否則結(jié)束。S207、將所述通配符替換成所述數(shù)據(jù)表中全部字段的標(biāo)識(shí)或名稱(chēng)。這里的替換一般指的是字符串替換,以上述步驟S203中的select*fromtable2為例,替換后的操作語(yǔ)言腳本為:SelectˊNameˊˊBrandˊˊPriceˊˊSellerˊˊStockˊfromtable2如此,將用通配符“*”表示的模糊搜索替換為具體明確的字段名稱(chēng)或標(biāo)識(shí)搜索,從而有利于防止腳本執(zhí)行時(shí)出錯(cuò)。由此可見(jiàn),本方法實(shí)施例與上一方法實(shí)施例的區(qū)別在于,當(dāng)用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),并不會(huì)自動(dòng)的為該用戶(hù)申請(qǐng)?jiān)L問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限,而是向所述用戶(hù)發(fā)送權(quán)限申請(qǐng)請(qǐng)示消息,由用戶(hù)根據(jù)需要自行決定是否需要發(fā)起權(quán)限申請(qǐng)。從而給予用戶(hù)自由選擇權(quán)。參考圖3所示,本申請(qǐng)實(shí)施例的數(shù)據(jù)庫(kù)系統(tǒng)是在原先部分31的基礎(chǔ)上增加了數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置32,以用于將用戶(hù)提交的操作語(yǔ)言腳本進(jìn)行優(yōu)化預(yù)處理,從而提高其執(zhí)行成功率。結(jié)合圖4所示,本申請(qǐng)一實(shí)施例的數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置包括:腳本獲取模塊41,用于獲取用戶(hù)提交的操作語(yǔ)言腳本;語(yǔ)法分析模塊42,用于對(duì)所述操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析,獲得所述用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表及其字段的標(biāo)識(shí)或名稱(chēng);權(quán)限控制模塊43,用于判斷所述用戶(hù)是否有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限;權(quán)限申請(qǐng)模塊44,用于當(dāng)所述用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)。在另一實(shí)施例中,所述數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置32還可以包括:通配符判斷模塊45,用于當(dāng)所述用戶(hù)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),判斷所述操作語(yǔ)言腳本中是否包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符;通配符替換模塊46,用于當(dāng)所述操作語(yǔ)言腳本中包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符時(shí),相應(yīng)的將所述通配符替換成所述數(shù)據(jù)表中全部字段的標(biāo)識(shí)或名稱(chēng)。本申請(qǐng)實(shí)施例為腳本提交執(zhí)行前的預(yù)處理,當(dāng)用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段 的權(quán)限時(shí),就會(huì)自動(dòng)為該用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限的申請(qǐng);在成功申請(qǐng)權(quán)限后,該用戶(hù)在下次訪(fǎng)問(wèn)時(shí)就能使用該數(shù)據(jù)表及其字段了,通過(guò)上述預(yù)處理,避免了腳本執(zhí)行過(guò)程中因缺少相應(yīng)的訪(fǎng)問(wèn)權(quán)限而導(dǎo)致的中途失敗,從而減少了計(jì)算資源及用戶(hù)時(shí)間的浪費(fèi),提高了用戶(hù)體驗(yàn)。至于本申請(qǐng)實(shí)施例中各模塊的具體細(xì)節(jié),請(qǐng)?jiān)斠?jiàn)上述方法實(shí)施例的對(duì)應(yīng)步驟S101-S106,在此不再贅述。結(jié)合圖5所示,本申請(qǐng)另一實(shí)施例的數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置包括:腳本獲取模塊51,用于獲取用戶(hù)提交的操作語(yǔ)言腳本;語(yǔ)法分析模塊52,用于對(duì)所述操作語(yǔ)言腳本進(jìn)行語(yǔ)法分析,獲得所述用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表及其字段的標(biāo)識(shí)或名稱(chēng);權(quán)限控制模塊53,用于判斷所述用戶(hù)是否有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限;權(quán)限申請(qǐng)請(qǐng)示模塊54,用于在權(quán)限申請(qǐng)模塊55為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)之前,向所述用戶(hù)發(fā)送權(quán)限申請(qǐng)請(qǐng)示消息;權(quán)限申請(qǐng)模塊55,用于在收到所述用戶(hù)返回的權(quán)限申請(qǐng)確認(rèn)消息后,為所述用戶(hù)發(fā)起訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限申請(qǐng)。在,本申請(qǐng)另一實(shí)施例中,上述數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)庫(kù)操作語(yǔ)言腳本優(yōu)化裝置還可以包括:通配符判斷模塊56,用于當(dāng)所述用戶(hù)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),判斷所述操作語(yǔ)言腳本中是否包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符;通配符替換模塊57,用于當(dāng)所述操作語(yǔ)言腳本中包含有用以指示該用戶(hù)所指定訪(fǎng)問(wèn)的數(shù)據(jù)表中全部字段的通配符時(shí),相應(yīng)的將所述通配符替換成所述數(shù)據(jù)表中全部字段的標(biāo)識(shí)或名稱(chēng)。由此可見(jiàn),本系統(tǒng)實(shí)施例與上一系統(tǒng)實(shí)施例的區(qū)別在于,當(dāng)用戶(hù)沒(méi)有訪(fǎng)問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限時(shí),并不會(huì)自動(dòng)的為該用戶(hù)申請(qǐng)?jiān)L問(wèn)所述數(shù)據(jù)表及其字段的權(quán)限,而是向所述用戶(hù)發(fā)送權(quán)限申請(qǐng)請(qǐng)示消息,由用戶(hù)根據(jù)需要自行決定是否需要發(fā)起權(quán)限申請(qǐng)。從而給予用戶(hù)自由選擇權(quán)。至于本申請(qǐng)實(shí)施例中各模塊的具體細(xì)節(jié),請(qǐng)?jiān)斠?jiàn)上述方法實(shí)施例的對(duì)應(yīng)步驟S201-S207,在此不再贅述。以上本申請(qǐng)實(shí)施例中所描述的方法或裝置可以直接嵌入可由處理器執(zhí)行的軟件 模塊中。軟件模塊可以存儲(chǔ)于RAM存儲(chǔ)器、閃存、ROM存儲(chǔ)器、EPROM存儲(chǔ)器、EEPROM存儲(chǔ)器、寄存器、硬盤(pán)、可移動(dòng)磁盤(pán)、CD-ROM或本領(lǐng)域中其它任意形式的存儲(chǔ)媒介中。示例性地,存儲(chǔ)媒介可以與處理器連接,以使得處理器可以從存儲(chǔ)媒介中讀取信息,并可以向存儲(chǔ)媒介存寫(xiě)信息??蛇x地,存儲(chǔ)媒介還可以集成到處理器中。以上所述的具體實(shí)施例,對(duì)本申請(qǐng)的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本申請(qǐng)實(shí)施例的具體實(shí)施例而已,并不用于限定本申請(qǐng)的保護(hù)范圍,凡在本申請(qǐng)的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的保護(hù)范圍之內(nèi)。當(dāng)前第1頁(yè)1 2 3 當(dāng)前第1頁(yè)1 2 3 
      當(dāng)前第1頁(yè)1 2 3 
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1