[發明專利]一種SQL語句處理方法、裝置和服務器在審
| 申請號: | 201410240354.3 | 申請日: | 2014-05-30 |
| 公開(公告)號: | CN105335366A | 公開(公告)日: | 2016-02-17 |
| 發明(設計)人: | 李浩;彭川;王博;鄧光超 | 申請(專利權)人: | 北大方正信息產業集團有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京銀龍知識產權代理有限公司 11243 | 代理人: | 許靜;黃燦 |
| 地址: | 100871 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 sql 語句 處理 方法 裝置 服務器 | ||
技術領域
本發明涉及數據處理領域,尤其涉及一種SQL語句處理方法、裝置和服務器。
背景技術
XML數據庫管理系統(XMLDBMS)是近年快速發展的一種新型的數據庫管理系統(DBMS),它用于存儲和檢索的數據是XML文檔。XML數據是一種非關系型數據,它的檢索和更新由標準的XQuery和XQueryUpdate完成。而SQL等關系型數據庫中的數據是不能直接應用在XMLDBMS中的,需要將SQL語句轉化為XQuery語句后才能在XMLDBMS中應用并供用戶查詢。
現有技術的不足之處在于:對于習慣使用SQL的用戶來說,要學習并掌握使用一門新的查詢語言需要花費大量時間和精力;而且,現有的將SQL語句轉化為關系型數據的查詢語句是由數據庫操作人員進行手工完成的,在這種方式下無法做到大批量的語句轉換,而且在轉換過程中易出現相應的語法、語義轉換錯誤。
發明內容
為克服上述缺陷,本發明提供一種SQL語句處理方法、裝置和服務器。
第一方面,本發明實施例提供一種SQL語句處理方法,所述方法包括:
獲取待轉換的SQL語句;
解析獲取的所述SQL語句,生成第一語法樹;
將所述第一語法樹轉換為非SQL的第二語法樹,所述第二語法樹的語義與所述第一語法樹相同;
遍歷所述第二語法樹,得到所述第二語法樹對應的非SQL語句。
優選地,所述方法還包括:
以Native方式存儲所得到的所述非SQL語句。
優選地,所述將所述第一語法樹轉換為非SQL的第二語法樹具體包括:
遍歷所述第一語法樹的所有節點;
根據預先設定的轉換規則,將所述第一語法樹的所有節點轉換為非SQL的所述第二語法樹的對應節點。
優選地,所述非SQL是XQuery語言。
第二方面,本發明實施例提供一種SQL語句處理裝置,所述裝置包括:
獲取模塊,用于獲取待轉換的SQL語句;
解析模塊,用于解析獲取的所述SQL語句,生成第一語法樹;
第一處理模塊,用于將所述第一語法樹轉換為非SQL的第二語法樹,所述第二語法樹的語義與所述第一語法樹相同;
第二處理模塊,用于遍歷所述第二語法樹,得到所述第二語法樹對應的非SQL語句。
優選地,所述裝置還包括:
存儲模塊,用于以Native方式存儲所得到的所述非SQL語句。
優選地,所述第一處理模塊具體用于:
遍歷所述第一語法樹的所有節點;
根據預先設定的轉換規則,將所述第一語法樹的所有節點轉換為非SQL的所述第二語法樹的對應節點。
優選地,所述非SQL是XQuery。
第三方面,本發明實施例提供一種服務器,所述服務器包括上述的SQL語句處理裝置。
本發明實施例提供的SQL語句處理方法、裝置和服務器,通過轉換語法樹的方式將SQL語句轉換為非SQL的語句,無需人工轉換,降低了轉換過程中間的錯誤率,提高了SQL語句的轉換效率;而且,習慣使用SQL的用戶無需花費精力和時間再學習和掌握使用一門新的查詢語言,方便了用戶的使用。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1表示SQL語句處理方法的流程圖。
圖2表示SQL語句處理方法的又一實施例中SQL語句的語法樹示意圖。
圖3表示SQL語句處理方法的又一實施例中XQuery語句的語法樹示意圖。
圖4表示SQL語句處理裝置的結構示意圖。
具體實施方式
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
一種SQL語句處理方法的流程圖如圖1所示,所述方法包括:
步驟100.獲取待轉換的SQL語句;
步驟101.解析獲取的所述SQL語句,生成第一語法樹;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北大方正信息產業集團有限公司,未經北大方正信息產業集團有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410240354.3/2.html,轉載請聲明來源鉆瓜專利網。





