[發明專利]一種嵌入式芯片SQL語句解析方法在審
| 申請號: | 202110171279.X | 申請日: | 2021-02-02 |
| 公開(公告)號: | CN112835925A | 公開(公告)日: | 2021-05-25 |
| 發明(設計)人: | 程兵兵 | 申請(專利權)人: | 北京握奇數據股份有限公司 |
| 主分類號: | G06F16/242 | 分類號: | G06F16/242;G06F16/2452;G06F8/41 |
| 代理公司: | 北京國帆知識產權代理事務所(普通合伙) 11334 | 代理人: | 劉小哲 |
| 地址: | 100102 北京市朝陽*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 嵌入式 芯片 sql 語句 解析 方法 | ||
1.一種嵌入式芯片SQL語句解析方法,包括設置在嵌入式芯片中的詞法解析模塊(21)和語法解析模塊(22),所述詞法解析模塊(21)用于識別SQL語句字符串中的單詞,并將其轉換成對應的狀態符,所述語法解析模塊(22)用于判斷詞法解析后的狀態符組合是否符合語法規范,
其特征在于:針對SQL語句中的單詞,建立將輸入字符轉換成狀態符的轉移函數,接受狀態符集合,各個所述接受狀態符分別對應于不同的單詞,
所述詞法解析模塊(21)包括以下步驟:
步驟1(S201),按照SQL語句的順序逐個輸入字符;
步驟2(S202),判別是否是分隔符,是分隔符時,進入步驟3(S203),不是分隔符時,進入步驟4(S204);
步驟3(S203),按順序將分隔符保存在靜態內存中;
步驟4(S204),每輸入一個字符,按照所述轉移函數,生成對應的狀態符;
步驟5(S205),生成的狀態符作為新狀態符,替換保存在動態內存中的舊狀態符;
步驟6(S206),判別所述新狀態符是否與接受狀態符集合中的任何一個所述接受狀態符一致,“不一致”時,返回步驟1(S201),輸入下一個字符,“一致”時,對所述動態內存進行清零后進入步驟7(S207);
步驟7(S207),將所述新狀態符作為已識別單詞的狀態符保存在靜態內存中;
步驟8(S208),判別新狀態符是否為結束狀態符,是結束狀態符時,結束流程,不是結束狀態符,返回步驟1(S201);
所述語法解析模塊(22)包括以下步驟:
步驟a(S301),按順序逐個讀入所述狀態符;
步驟b(S302),判別狀態符是否為結束狀態符,是結束狀態符時,進入步驟c(S303),不是結束狀態符時,進入步驟d(S304);
步驟c(S303),以狀態符和分隔符組成的短語用于生成指令;
步驟d(S304),基于所述狀態符,判斷前一單詞是否為該單詞所定義的可接收單詞,“Yes”時,進入步驟a(S301),“No”時,進入步驟e(S305);
步驟e(S305),判斷語法錯誤,結束流程。
2.根據權利要求1所述的嵌入式芯片SQL語句解析方法,其特征在于:所述步驟a(S301)中,監測所述靜態內存,有狀態符保存時,讀入所述狀態符。
3.根據權利要求2所述的嵌入式芯片SQL語句解析方法,其特征在于:所述步驟d(S304)還包括預處理步驟,
判別所述狀態符對應的是否為條件單詞,如果是條件單詞,對之前的狀態符構成的短語進行預處理。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京握奇數據股份有限公司,未經北京握奇數據股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110171279.X/1.html,轉載請聲明來源鉆瓜專利網。





