TW201416893A - 資料操作指令產生裝置、資料操作指令產生系統、資料操作指令產生方法以及儲存資料操作指令產生程式的儲存媒體 - Google Patents

資料操作指令產生裝置、資料操作指令產生系統、資料操作指令產生方法以及儲存資料操作指令產生程式的儲存媒體 Download PDF

Info

Publication number
TW201416893A
TW201416893A TW101144109A TW101144109A TW201416893A TW 201416893 A TW201416893 A TW 201416893A TW 101144109 A TW101144109 A TW 101144109A TW 101144109 A TW101144109 A TW 101144109A TW 201416893 A TW201416893 A TW 201416893A
Authority
TW
Taiwan
Prior art keywords
sql
individual
basic
definition
grammar
Prior art date
Application number
TW101144109A
Other languages
English (en)
Inventor
Yumiko Mohri
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of TW201416893A publication Critical patent/TW201416893A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • G06F16/2448Query languages for particular applications; for extensibility, e.g. user defined types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

裝置記憶部290係記憶基本SQL設定檔291及個別SQL設定檔292。基本SQL設定檔291係包含:構成用以在資料庫111A、111B進行存取的SQL句的基本語法的1個以上的SQL項目、及定義各SQL項目的標籤定義。個別SQL設定檔292係包含:構成SQL句的個別語法的1個以上的SQL項目、及定義與基本語法不同的SQL項目的標籤定義。SQL產生部210係根據基本SQL設定檔291及個別SQL設定檔292,產生SQL句。

Description

資料操作指令產生裝置、資料操作指令產生系統、資料操作指令產生方法以及儲存資料操作指令產生程式的儲存媒體
本發明係關於例如產生特定SQL語法的SQL句(資料操作指令之一例)的資料操作指令產生裝置、資料操作指令產生系統、資料操作指令產生方法以及儲存資料操作指令產生程式的儲存媒體。
以用以進行DBMS(Data Base Management System,資料庫管理系統)的資料操作的資料操作語言而言,一般而言使用SQL(Structured Query Language,結構化查詢語言)。
SQL雖然具有標準的語法體系,但是現實中,係依每個DBMS的類別,SQL的語法體系或格式資訊有些微差異。
以往,為了吸收DBMS間的語法體系等的差異,客戶端機器產生標準SQL,語言轉換用的伺服機器藉由依DBMS別的轉換常式(程式),將標準SLQ轉換成特定DBMS用的專用SQL(例如專利文獻1)。
此外,亦已存在一種以獨自的記述法(例如XSLT)將DBMS的資料構造共通化,提供對該通用的資料構造進行資料操作的結構,藉此不需要SQL本身的技術(例如專利文獻2)。
但是,若如專利文獻1般進行SQL的轉換,由於必須新追加用以進行SQL之轉換的伺服機器,因此耗費成本。
因此,考慮一種將進行SQL之轉換的轉換常式追加在原有的伺服機器或原有的客戶端機器的方式。
若在原有的伺服機器追加轉換常式時,必須變更伺服機器的系統構成。但是,若變更系統構成時,發生重新製作相關連的程式間的流程及伺服機器的規格,較耗費成本。
此外,在適合FA(Factory Automation,工廠自動化)的資訊系統中,會有使用者無法接受對運轉中的伺服機器的系統構成進行操作的傾向,圖求以不改變伺服機器的系統構成來因應。
若在原有的客戶端機器追加轉換常式時,必須進行客戶端機器的程式再編譯。但是,在適合FA的組裝機器中,係難以將客戶端機器在出貨後將所出貨的客戶端的程式進行再編譯。
專利文獻2係揭示二個實施形態。
在實施形態1中,以SQL指令的單位將資料構造共通化。若為該實施形態的情形,在每次所執行的SQL指令被變更時,必須修正或追加詢問轉換檔案及詢問結果轉換檔案等設定檔案。但是,在適於FA的資訊系統中,係按每個所生產的製品變更SQL指令,使用者的方便性降低,不具DB知識的使用者難以利用。
在實施形態2中,按每個DBMS的類別,有詢問轉換檔案及詢問結果轉換檔案,按每個DBMS的類別來構裝轉換常式。若 為該實施形態的情形,為了與DBMS的追加或變更相對應,必須將伺服機器的程式進行再編譯。但是,在適於FA的資訊系統中,會有使用者無法接受在運轉中的伺服機器進行操作的傾向,圖求以對伺服機器不操作來因應。
(先前技術文獻) (專利文獻)
(專利文獻1)日本特開平07-065032號公報
(專利文獻2)日本特開2001-344147號公報
本發明之目的在可輕易產生例如按照在特定的資料庫所被使用的SQL語法的SQL句。
本發明之資料操作指令產生裝置係包括:基本語法記憶部,其係記憶構成定義用以在資料庫進行存取的資料操作指令的基本語法定義的1個以上的基本語法項目,並且按每個基本語法項目,記憶定義基本語法項目的基本項目定義;個別語法記憶部,其係記憶構成至少一部分與前述基本語法定義不同的個別語法定義的1個以上的個別語法項目,並且按前述1個以上的基本語法項目的任一者均不同的每個個別語法項目,記憶定義個別語法項目的個別項目定義;基本項目定義取得部,其係在被記憶在前述個別語法記憶 部的前述1個以上的個別語法項目之中選擇未被記憶個別項目定義的個別語法項目,由前述基本語法記憶部取得定義與所選擇的個別語法項目為相同的基本語法項目的基本項目定義;及資料操作指令產生部,其係根據被記憶在前述個別語法記憶部的各個別項目定義、及藉由前述基本項目定義取得部所取得的前述基本項目定義,產生前述資料操作指令。
藉由本發明,可輕易產生例如按照在特定的資料庫中所被使用的SQL語法的SQL句(資料操作指令之一例)。
100‧‧‧DB存取系統
110、110A、110B‧‧‧DB伺服
111A、111B‧‧‧資料庫
119‧‧‧資料庫
200‧‧‧資料操作語言產生裝置
210‧‧‧SQL產生部
211‧‧‧標籤關連處理部
220‧‧‧SQL執行部
290‧‧‧裝置記憶部
291‧‧‧基本SQL設定檔
292‧‧‧個別SQL設定檔
293‧‧‧產生SQL定義檔案
294‧‧‧產生SQL
295‧‧‧SQL執行結果
296‧‧‧執行排程
297‧‧‧收集資料
300‧‧‧設定檔作成終端機
310‧‧‧個別SQL設定檔作成部
320‧‧‧產生SQL定義檔案作成部
390‧‧‧終端機記憶部
391‧‧‧設定選擇資訊
400‧‧‧個別SQL設定檔作成畫面
401‧‧‧基本SQL標籤一覽
402‧‧‧個別SQL標籤作成欄
403‧‧‧DB類別名
404‧‧‧標籤名
405‧‧‧標籤定義欄
406‧‧‧選單一覽
408‧‧‧結束按鍵
409‧‧‧滑鼠游標
410‧‧‧產生SQL定義檔案作成畫面
411‧‧‧產生SQL資訊欄
412‧‧‧設定選擇欄
413‧‧‧輸入欄
414‧‧‧基本SQL標籤一覽
415‧‧‧個別SQL標籤一覽
416‧‧‧產生SQL指令作成欄
417‧‧‧產生SQL指令定義欄
901‧‧‧CPU
902‧‧‧匯流排
903‧‧‧ROM
904‧‧‧RAM
905‧‧‧通訊板
911‧‧‧顯示器
912‧‧‧鍵盤
913‧‧‧滑鼠
914‧‧‧驅動器
920‧‧‧磁碟裝置
921‧‧‧OS
922‧‧‧程式群
923‧‧‧檔案群
第1圖係實施形態1中的DB存取系統100的構成圖。
第2圖係顯示實施形態1中的基本SQL設定檔291之一例圖。
第3圖係顯示實施形態1中的個別SQL設定檔292之一例圖。
第4圖係顯示實施形態1中的個別SQL設定檔292之一例圖。
第5圖係顯示實施形態1中的產生SQL定義檔案293之一例圖。
第6圖係顯示實施形態1中的產生SQL定義檔案293之一例圖。
第7圖係顯示實施形態1中的資料操作語言產生方法的流程圖。
第8圖係顯示實施形態1中的資料操作語言產生方法的概要圖。
第9圖係顯示實施形態1中的SQL句產生處理(S140)的流程圖。
第10圖係顯示實施形態1中的標籤關連處理(S146)的流程圖。
第11圖係顯示實施形態1中的資料操作語言產生裝置200的硬體資源之一例圖。
第12圖係實施形態2中的DB存取系統100的構成圖。
第13圖係顯示實施形態2中的個別SQL設定檔作成畫面400之一例圖。
第14圖係顯示實施形態2中的個別SQL設定檔作成畫面400之一例圖。
第15圖係顯示實施形態2中的產生SQL定義檔案作成畫面410之一例圖。
第16圖係顯示實施形態2中的產生SQL定義檔案作成畫面410之一例圖。
實施形態1.
說明用以輕易產生按照在特定的資料庫所被使用的SQL語法的SQL句的形態。
SQL(Structured Query Language,結構化查詢語言)係用以在資料庫進行存取的語言之一例。以下將資料庫記為「DB」。
SQL的種類有資料操作語言(DML)、資料定義語言(DDL)及資料控制語言(DCL)。以下將該等總稱為資料操作語言。
在實施形態1中係以SQL為例來進行說明,但是亦可使用SQL以外的資料操作語言。
第1圖係實施形態1中的DB存取系統100的構成圖。
根據第1圖,說明實施形態1中的DB存取系統100的構成。
DB存取系統100係用以在資料庫(111A、111B)進行存取的資訊處理系統。
DB存取系統100係包括:資料操作語言產生裝置200、及1個以上的DB伺服110。
資料操作語言產生裝置200(資料操作指令產生裝置之一例)與各DB伺服110A/110B係透過網路等來進行通訊連接。
DB伺服110A係包括資料庫111A,DB伺服110B係包括資料庫111B。
此外,在用以在資料庫111A進行存取的SQL句、及用以在資料庫111B進行存取的SQL句中,SQL句的至少一部分的語法不同。
因此,在資料庫111A進行存取時,資料操作語言產生裝置200係以資料庫111A用的語法產生SQL句。此外,在資料庫111B進行存取時,資料操作語言產生裝置200係以資料庫111B用的語法產生SQL句。
資料操作語言產生裝置200係在SQL語法不同的 複數資料庫111A、111B進行存取的裝置。
例如資料操作語言產生裝置200係被組入在構成FA(Factory Automation)的FA機器來加以使用。
資料操作語言產生裝置200係包括:SQL產生部210、SQL執行部220及裝置記憶部290。
以下說明資料操作語言產生裝置200之各構成的概要。關於資料操作語言產生裝置200的各構成的詳細內容,則另外說明。
SQL產生部210(基本項目定義取得部、資料操作指令產生部之一例)係根據後述的基本SQL設定檔(profile)291、個別SQL設定檔292及產生SQL定義檔案293,產生用以在資料庫(111A、111B)進行存取的SQL句。
例如,在資料庫111A進行存取時,SQL產生部210係使用資料庫111A用的個別SQL設定檔292來產生SQL句。此外,在資料庫111B進行存取時,SQL產生部210係使用資料庫111B用的個別SQL設定檔292來產生SQL句。
以下將藉由SQL產生部210所被產生的SQL句稱為「產生SQL294」。
SQL產生部210係包括用以產生產生SQL294的複數標籤關連處理部211。
SQL執行部220係將藉由SQL產生部210所被產生的產生SQL294傳送至DB伺服(110A或110B),由DB伺服接收產生SQL294的執行結果,且輸出所接收到的執行結果。
以下將產生SQL294的執行結果稱為「SQL執行結果295」。
裝置記憶部290(基本語法記憶部、個別語法記憶部、產生指令定義記憶部之一例)係記憶在資料操作語言產生裝置200中所使用的資料。
例如裝置記憶部290係記憶如以下所示之資料。
裝置記憶部290係預先記憶基本SQL設定檔291(基本語法記憶部之一例)、個別SQL設定檔292(個別語法記憶部之一例)、產生SQL定義檔案293(產生指令定義記憶部之一例)及執行排程296。執行排程296係定義出產生產生SQL294的排程的資料。
裝置記憶部290係記憶:藉由SQL產生部210所被產生的產生SQL294、及藉由SQL執行部220所被取得的SQL執行結果295。
裝置記憶部290係記憶由組入有資料操作語言產生裝置200的FA機器所取得的收集資料297。收集資料297係指定在產生SQL294所設定的設定值的資料。
基本SQL設定檔291係定義SQL語法之基本形式的資料。
使用者係將標準或一般SQL語法預先定義在基本SQL設定檔291。
以下將基本SQL設定檔291所定義的SQL語法稱為「基本SQL語法」。
個別SQL設定檔292係按每個資料庫(111A或111B)的類別,定義出對應資料庫之類別的SQL語法的資料。
個別SQL設定檔292係在對應資料庫之類別的SQL語法之 中,定義與基本SQL語法不同的SQL語法。
使用者係預先產生資料庫111A用的個別SQL設定檔292與資料庫111B用的個別SQL設定檔292。
以下將個別SQL設定檔292所定義的SQL語法稱為「個別SQL語法」或「差分SQL語法」。
產生SQL定義檔案293係按每個作為產生SQL294所產生的SQL句,定義SQL句的資料。
例如產生SQL定義檔案293係指定用以產生產生SQL294所使用的個別SQL設定檔292,並且指定設定在產生SQL294的文字列、值及資料等。
使用者係按每個使資料操作語言產生裝置200所產生的SQL句,預先產生個別SQL設定檔292。
第2圖係顯示實施形態1中的基本SQL設定檔291之一例圖。
根據第2圖,說明實施形態1中的基本SQL設定檔291。
基本SQL設定檔291A係使用BNF(巴科斯諾爾形式)來定義基本SQL語法。但是,亦可使用BNF以外的表記法來定義基本SQL語法。關於BNF的表記法係省略說明。
基本SQL設定檔291A係按每個SELECT指令或UPDATE指令等SQL指令,定義基本SQL語法。
基本SQL設定檔291A係在註解行「//基本SQL語法(...)」之下,顯示使用標籤所定義的基本SQL語法。<select>等、以< >所包圍者即為標籤。
基本SQL設定檔291A係在註解行「//標籤類型」之下,顯 示基本SQL語法所包含的各標籤的種類。
定義基本SQL語法的各行的左邊係表示用以定義 SQL指令的標籤,右邊係表示定義左邊標籤的語法(以下稱為標籤定義)。
標籤定義係包含(1)文字列、(2)參照標籤及(3) 動態標籤。
(1)文字列係產生SQL294所設定的靜態者。例如,以<select>開始的行所包含的「SELECT」「FROM」係(1)文字列之一例。此外,由<select_distinct>開始的行所包含的「ALL」「DISTINCT」係(1)文字列之一例。
(2)參照標籤係用以參照其他標籤的標籤。例如,以<select>開始的行所包含的<select_distinct><column_list><table_list>係(2)參照標籤之一例。
(3)動態標籤係表示依產生SQL定義檔案293而異的動態資訊的標籤。例如,由<table_list>開始的行所包含的<table_name>係(3)動態標籤之一例。
以下將構成標籤定義的(1)文字列、(2)參照標籤及(3)動態標籤稱為「SQL項目」。
標籤的種類係存在<analysis>與<dynamic>之2種。
<analysis>意指文字列解析所需的解析標籤,<dynamic>意指動態設定值的動態標籤。
例如<sql_basic_select>係必須解析<select>等,因此<sql_basic_select>的種類為<analysis>。
此外,<select_distinct>係置換成「ALL」與「DISTINCT」的任何文字列,因此<select_distinct>的種類為<dynamic>。
第3圖、第4圖係顯示實施形態1中的個別SQL設定檔292之一例圖。
根據第3圖及第4圖,說明實施形態1中的個別SQL設定檔292。
第3圖及第4圖所示之個別SQL設定檔292A、292B係使用BNF來定義SQL語法。但是,亦可使用BNF以外的表記方法來定義SQL語法。
第3圖及第4圖所示之個別SQL設定檔292A、292B係定義SELECT指令的個別SQL語法。
亦即,個別SQL設定檔292A、292B所定義的SELECT指令的個別SQL語法,與基本SQL設定檔291A(參照第2圖)所定義的SELECT指令的基本SQL語法相比,至少一部分不同。
第3圖所示之個別SQL設定檔292A所定義的SELECT指令的個別SQL語法,與第2圖所示之基本SQL設定檔291A所定義的SELECT指令的基本SQL語法相比,構成SQL語法的SQL項目<select><where><order_by><group_by>雖相同,但是<order_by>與<group_by>的順序不同。
第4圖所示之個別SQL設定檔292B所定義的SELECT指令的個別SQL語法,與第2圖所示之基本SQL設定檔291A所定義的SELECT指令的基本SQL語法相比,構成SQL語法的SQL項目<dif_select>不同。
第4圖所示之由<sql_select_db2>開始的行的最後的記號「;」係(1)文字列之一例。
第5圖、第6圖係顯示實施形態1中的產生SQL 定義檔案293之一例圖。
根據第5圖及第6圖,說明實施形態1中的產生SQL定義檔案293。
第5圖所示之產生SQL定義檔案293A係在註解 行「//產生SQL資訊」之下,包含以「個別SQL設定檔」開始的行、及以「產生SQL指令」開始的行。
以「個別SQL設定檔」開始的行係指定所使用的個別SQL設定檔292的行。
以「產生SQL指令」開始的行係在個別SQL設定檔292所定義的複數SQL指令之中指定所產生的SQL指令的行。
在第5圖中,係指定出以「db1_profile」的名稱予以識別的個別SQL設定檔292、及以「sql_select_db1」的名稱的標籤予以定義的SQL指令。
第5圖所示之產生SQL定義檔案293A係在註解 行「//設定選擇」之下,指定產生SQL294所設定的設定內容。
例如,產生SQL定義檔案293A係指定將個別SQL設定檔292所包含之「use_clause」的名稱的標籤置換成文字列「where」。
此外,產生SQL定義檔案293A係指定將個別SQL設定檔292所包含之「where_expression」的名稱的標籤置換成條件式「test1>=complete_performance」。在此, 「complete_performance」意指收集資料297所指定的完成實績值。
第6圖所示之產生SQL定義檔案293B係使用標籤 來定義與以第5圖所示之產生SQL定義檔案293A所定義的產生SQL294為相同的SQL句之例。
第7圖係顯示實施形態1中的資料操作語言產生 方法的流程圖。
第8圖係顯示實施形態1中的資料操作語言產生方法的概要圖。
根據第7圖及第8圖,說明實施形態1中的資料操作語言產生方法。
第7圖所示之資料操作語言產生方法被執行之 前,使用者係產生基本SQL設定檔291、所需之個別SQL設定檔292、所需之產生SQL定義檔案293及執行排程296,將所產生的各設定檔及執行排程296記憶在裝置記憶部290。
在S110中,SQL產生部210係參照執行排程296, 按照執行排程296來選擇產生SQL定義檔案293。
例如,執行排程296係按每個執行產生SQL294的執行時刻,將執行時刻、產生SQL定義檔案293的檔案名、DB伺服110的識別碼(例如IP位址)、及指定產生產生SQL294所需之收集資料297的收集資訊產生對應來進行定義。
執行排程296使執行時刻「12:00」與產生SQL定義檔案293的檔案名「sql_fileA」產生對應時,SQL產生部210係將以檔案名「sql_fileA」所識別的產生SQL定義檔案293選擇 為12時。
此外,在執行排程296指定收集資訊時,SQL產生部210係按照所被指定的收集資訊,由FA機器取得收集資料297。
但是,SQL產生部210亦可以執行排程296所示之執行時刻以外的時序選擇產生SQL定義檔案293。例如,亦可當使用者對資料操作語言產生裝置200指定產生SQL定義檔案293時,SQL產生部210選擇由使用者所指定的產生SQL定義檔案293。
S110之後,進至S120。
在S120中,SQL產生部210係參照在S110所選 擇的產生SQL定義檔案293,選擇產生SQL定義檔案293所指定的個別SQL設定檔292。
例如SQL產生部210係設為在S110中選擇第8圖所示之產生SQL定義檔案293A。
此時,SQL產生部210係參照產生SQL定義檔案293A之以「個別SQL設定檔」開始的行,選擇以「個別SQL設定檔」開始的行所指定的「db1_profile」的檔案名予以識別的個別SQL設定檔292。
S120之後,進至S130。
在S130中,SQL產生部210係參照在S110中所選擇的產生SQL定義檔案293,由在S120中所選擇的個別SQL設定檔292選擇個別SQL語法。
例如,SQL產生部210係在S110中選擇第8圖所示之產生SQL定義檔案293A,在S120中選擇第8圖所示之個別SQL 設定檔292A。
此時,SQL產生部210係參照產生SQL定義檔案293A之以「產生SQL指令」開始的行,由個別SQL設定檔292A選擇以「產生SQL指令」開始的行所指定的「sql_select_db1」的名稱的標籤予以定義的個別SQL語法(SELECT指令)。
S130之後,進至S140。
在S140中,SQL產生部210係根據在S130中所 選擇的個別SQL設定檔292的個別SQL語法、在S110中所選擇的產生SQL定義檔案293所定義的設定選擇、及基本SQL設定檔291所定義的基本SQL語法,來產生產生SQL294。
例如,SQL產生部210係在S110中選擇第8圖所示之產生SQL定義檔案293A,在S130中由第8圖所示之個別SQL設定檔292A選擇出個別SQL語法(SELECT指令)。
此時,SQL產生部210係根據第8圖所示之基本SQL設定檔291A所定義的基本SQL語法(SELECT指令),產生第8圖所示之產生SQL294A。
第9圖係顯示實施形態1中的SQL句產生處理(S140)的流程圖。
根據第9圖,說明實施形態1中的SQL句產生處理(S140)。
SQL句產生處理(S140)係由S141至S147所構成。
在S141中,SQL產生部210係叫出處理定義在S130中所選擇的個別SQL語法的標籤的標籤關連處理部211。
例如,SQL產生部210係在S130中由第8圖所示之個別SQL設定檔292A選擇出個別SQL語法(SELECT指令)。
此時,SQL產生部210係叫出處理定義該個別SQL語法(SELECT指令)的<sql_select_db1>的標籤關連處理部211。
S141之後,進至S142。
以下,標籤關連處理部211係按照每個構成在S130中所選擇出的個別SQL語法的SQL項目,反覆執行S142至S147的處理。
在S142中,標籤關連處理部211係由定義在S130(參照第7圖)中所選擇的個別SQL語法的標籤定義,按照構成標籤定義的SQL項目的排列順序來讀入一個SQL項目。
亦即,標籤關連處理部211係在第1次的S142讀入前頭的SQL項目,在第2次的S142讀入第2個SQL項目。
例如,標籤關連處理部211係在第1次的S142,由第8圖所示之<sql_select_db1>的標籤定義讀入前頭的SQL項目<select>。
此外,標籤關連處理部211係在第2次的S142,由第8圖所示之<sql_select_db1>的標籤定義,讀入第2個SQL項目<where>。
S142之後,進至S143。
在S143中,標籤關連處理部211係判定在S142中所讀入的SQL項目為文字列、動態標籤、及解析標籤的何者。
例如,標籤關連處理部211係如以下所示來判定SQL項目的種類。
標籤關連處理部211係判定SQL項目是否為標籤。
若SQL項目非為標籤,SQL項目為文字列。
若SQL項目為標籤,標籤關連處理部211係判定標籤是否為個別SQL設定檔292所定義。
若標籤為個別SQL設定檔292所定義,標籤關連處理部211係參照個別SQL設定檔292,來判定SQL項目為動態標籤<dynamic>與解析標籤<analysis>的何者。
若標籤未被個別SQL設定檔292所定義,標籤關連處理部211係參照基本SQL設定檔291,來判定SQL項目為動態標籤<dynamic>與參照標籤<analysis>的何者。
例如,標籤關連處理部211係設為在S142中由第8圖所示之個別SQL設定檔292A讀入<select>者。該<select>並未被個別SQL設定檔292A所定義。
此時,標籤關連處理部211係參照第8圖所示之基本SQL設定檔291A所定義的<select>的標籤類型,判定出<select>為解析標籤<analysis>。
若SQL項目為文字列,進至S144。
若SQL項目為動態標籤,進至S145。
若SQL項目為解析標籤,進至S146。
在S144中,標籤關連處理部211係將在S142中所讀入的文字列寫出在產生SQL294。
S144之後,進至S147。
在S145中,標籤關連處理部211係由產生SQL定義檔案293的設定選擇取得作為在S142中所讀入的動態標籤所設定的內容所被定義的設定內容(文字列、數值、條件式 等),將所取得的設定內容寫出在產生SQL294。
若設定選擇包含有指定收集資料297的預定變數,標籤關連處理部211係將包含在S110中所取得的收集資料297所被指定的設定值的設定內容寫出在產生SQL294。
S145之後,進至S147。
在S146中,標籤關連處理部211係藉由執行後述的標籤關連處理(S146),將在S142中所讀入的解析標籤進行文字列解析,將相當於解析標籤的文字列寫出在產生SQL294。
S146之後,進至S147。
在S147中,標籤關連處理部211係判定是否殘留有在S142中未由個別SQL語法的標籤定義所讀入的SQL項目。
若殘留有SQL項目(YES),返回至S142。
若未殘留有SQL項目(NO),SQL句產生處理(S140)即結束。
第10圖係顯示實施形態1中的標籤關連處理(S146)的流程圖。
根據第10圖,說明實施形態1中的標籤關連處理(S146)。
標籤關連處理(S146)係包含S146-1至S146-7。此外,標籤關連處理(S146)係重新返回的處理,包含標籤關連處理(S146)。
在S146-1中,標籤關連處理部211係參照個別SQL設定檔292,判定解析標籤是否被個別SQL設定檔292所定義。
例如,若解析標籤為<select>,解析標籤<select>係並未被 第8圖所示之個別SQL設定檔292A所定義。
若解析標籤被個別SQL設定檔292所定義(YES),進至S146-2。
若解析標籤未被個別SQL設定檔292所定義(NO),進至S146-3。
在S146-2中,標籤關連處理部211係由個別SQL設定檔292讀入解析標籤的標籤定義。
S146-2之後,進至S146-4。
在S146-3中,標籤關連處理部211係由基本SQL設定檔291讀入解析標籤的標籤定義。
例如,若解析標籤為<select>,標籤關連處理部211係由第8圖所示之291A讀入解析標籤<select>的標籤定義。解析標籤<select>的標籤定義為「SELECT<select_distinct><column_list>FROM<table_list>」。
S146-3之後,進至S146-4。
以下,標籤關連處理部211係按照每個構成在S146-2或S146-3中所讀入的標籤定義的SQL項目,反覆執行S146-4至S146-8的處理。
在S146-4中,標籤關連處理部211係由在S146-2或S146-3所讀入的標籤定義,按照構成標籤定義的SQL項目的排列順序來讀入一個SQL項目。
例如,標籤關連處理部211係設為在S146-3中讀入標籤定義「SELECT<select_distinct><column_list>FROM<table_list>」者。
此時,標籤關連處理部211係在第1次的S146-4中讀入標籤定義的前頭的SQL項目「SELECT」,在第2次的S146-4中讀入標籤定義的第2個的SQL項目<select_distinct>。
S146-4之後,進至S146-5。
在S146-5中,標籤關連處理部211係判定在S146-4中所讀入的SQL項目為文字列、動態標籤、及解析標籤的何者。
例如,標籤關連處理部211係如以下所示來判定SQL項目的種類。
標籤關連處理部211係判定SQL項目是否為標籤。
若SQL項目非為標籤,SQL項目為文字列。
若SQL項目為標籤,標籤關連處理部211係參照已讀入標籤定義的設定檔,判定SQL項目為動態標籤<dynamic>與解析標籤<analysis>的何者。
若SQL項目為文字列,進至S146-6。
若SQL項目為動態標籤,進至S146-7。
若SQL項目為解析標籤,標籤關連處理部211係將在S146-4中所讀入的SQL項目(解析標籤)為對象來執行標籤關連處理(S146)。標籤關連處理(S146)之後,進至S146-8。
在S146-6中,標籤關連處理部211係將在S146-4中所讀入的文字列寫出在產生SQL294。
例如,標籤關連處理部211係設為在將第8圖所示之基本SQL設定檔291A所定義的<select>的標籤定義之中,在S146-4中讀入前頭的SQL項目「SELECT」者。「SELECT」為文字列。
此時,標籤關連處理部211係如第8圖所示將文字列「SELECT」寫出在產生SQL294A。
S146-6之後,進至S146-8。
在S146-7中,標籤關連處理部211係由在S146-2或S146-3中讀入標籤定義的設定檔的設定選擇,取得作為在S146-4中所讀入的動態標籤所設定的內容所被定義的設定內容(文字列、數值、條件式等),將所取得的設定內容寫出在產生SQL294。
若設定選擇包含指定收集資料297的預定變數,標籤關連處理部211係將包含在S110(參照第7圖)中所取得的收集資料297所被指定的設定值的設定內容寫出在產生SQL294A。
例如,標籤關連處理部211係設為在第8圖所示之基本SQL設定檔291A所定義之<select>之標籤定義之中,在S146-4中讀入第2個的SQL項目<select_distinct>者。<select_distinct>係置換成文字列「ALL」或文字列「DISTINCT」的動態標籤。
此時,標籤關連處理部211係將<select_distinct>的設定內容「ALL」如第8圖所示寫出在產生SQL294A。
S146-7之後,進至S146-8。
在S146-8中,標籤關連處理部211係判定是否殘留有在S146-4中未由標籤定義讀入的SQL項目。
若殘留有SQL項目(YES),即返回至S146-4。
若未殘留有SQL項目(NO),標籤關連處理(S146)即結束。
藉由根據第9圖及第10圖所說明的SQL句產生處 理(S140),根據第8圖所示之產生SQL定義檔案293A、個別SQL設定檔292A及基本SQL設定檔291A,產生第8圖所示之產生SQL294A。
返回至第7圖,由S150接續資料操作語言產生方 法的說明。
在S150中,SQL執行部220係將在S140中所產 生的產生SQL294傳送至DB伺服110。
DB伺服110係接收產生SQL294,將所接收到的產生SQL294輸入至資料庫111。
資料庫111係執行所被輸入的產生SQL294,產生SQL執行結果295(例如,滿足SELECT句之條件的資料),將所產生的SQL執行結果295進行輸出。
DB伺服110係將由資料庫111所被輸出的SQL執行結果295傳送至資料操作語言產生裝置200的SQL執行部220。
SQL執行部220係接收SQL執行結果295,將所接收到的SQL執行結果295進行輸出。例如,SQL執行部220係將所接收的SQL執行結果295輸出至FA機器。
藉由S150,資料操作語言產生方法的處理即結束。
第11圖係顯示實施形態1中的資料操作語言產生 裝置200之硬體資源之一例圖。
在第11圖中,資料操作語言產生裝置200(電腦之一例)係包括CPU901(Central Processing Unit,中央處理單元)。CPU901係透過匯流排902而與ROM903、RAM904、通訊板 905(通訊裝置)、顯示器911(顯示裝置)、鍵盤912、滑鼠913、驅動器914、磁碟裝置920等硬體裝置相連接,且控制該等硬體裝置。驅動器914係讀寫FD(Flexible Disk,可撓性碟片)、CD(Compact Disc,光碟)、DVD(Digital Versatile Disc,數位影音光碟)等記憶媒體的裝置。
ROM903、RAM904、磁碟裝置920及驅動器914係記憶裝置之一例。鍵盤912、滑鼠913、通訊板905及記憶裝置係輸入裝置之一例。顯示器911、通訊板905及記憶裝置係輸出裝置之一例。
通訊板905係以有線或無線與LAN(Local Area Network,區域網路)、網際網路、電話線路等通訊網相連接。
在磁碟裝置920係記憶有OS921(作業系統)、程 式群922、檔案群923。
在程式群922中係包含有在實施形態中執行作為「~部」所說明之功能的程式。程式(例如資料庫操作指令產生程式)係藉由CPU901予以讀出且執行。亦即,程式係作為「~部」而使電腦發揮功能者,而且使電腦執行「~部」的順序或方法者。
在檔案群923係包含有在實施形態中所說明的「~部」中所被使用的各種資料(輸入、輸出、判定結果、計算結果、處理結果等)。
在實施形態中,構成圖及流程圖所包含的箭號係主要顯示資料或訊號的輸入輸出。
根據流程圖等所說明的實施形態的處理係使用CPU901、 記憶裝置、輸入裝置、輸出裝置等硬體予以執行。
在實施形態中作為「~部」所說明者亦可為「~ 電路」、「~裝置」、「~機器」,而且亦可為「~步驟」、「~順序」、「~處理」。亦即,作為「~部」所說明者亦可以韌體、軟體、硬體或該等之組合的任一者予以構裝。
在實施形態1中係說明例如以下所示之資料操作 語言產生裝置200。
基本SQL設定檔291及個別SQL設定檔292係以規定的格式(例如BNF等)定義SQL。
SQL產生部210係解析以規定的格式所被書寫的資訊,且實施產生關連的處理。
基本SQL設定檔291係定義成為基本的「基本SQL」。
個別SQL設定檔292係定義依DB類別而異的「個別SQL」。但是,個別SQL設定檔292係僅定義與基本SQL不同的部分。
SQL產生部210係僅具有未依存DBMS類別之共通化的處理,各設定檔的項目係與該經共通化的處理產生關連。
SQL產生部210係在SQL產生時,與基本SQL相同的部分係進行與基本SQL相同的處理,在不同的部分,係個別進行產生關連的處理。
藉由實施形態1,可達成例如以下所示之效果。
資料操作語言產生裝置200係可藉由個別SQL設定檔292,依SQL語法不同的資料庫111別來產生SQL句。
資料操作語言產生裝置200係藉由個別SQL設定檔292, 不僅特定的SQL指令的差異,亦可吸收SQL指令體系全體的差異。
資料操作語言產生裝置200係藉由追加個別SQL設定檔292,無須修訂程式,即可對應SQL語法不同的新的資料庫111。
資料操作語言產生裝置200藉由產生按照DBMS之依習知技術的SQL,不需要進行原有系統的修訂或新軟體(指程式。以下同)的追加。
按照經外部化的設定檔,資料操作語言產生裝置200產生SQL句的文字列,藉此無須修訂組入機器內部的軟體,即可追加及變更DBMS或SQL指令。
在設定檔規定成為基本的處理,依每個DBMS僅有與基本不同的部分作成設定檔,藉此可達成組入機器內部的軟體輕量化。
在實施形態1中係說明例如以下所示之資料操作指令產生裝置(200)。在括弧內記載在實施形態1中所說明之構成的符號或名稱。
資料操作指令產生裝置係包括:基本語法記憶部、個別語法記憶部、基本項目定義取得部、及資料操作指令產生部。
前述基本語法記憶部(290)係記憶構成定義用以在資料庫(111)進行存取的資料操作指令(SQL句)的基本語法定義(基本SQL語法)的1個以上的基本語法項目(標籤項目),並且按每個基本語法項目,記憶定義基本語法項目的基本項目定義(標籤定義)。
前述個別語法記憶部係記憶構成至少一部分與前述基本 語法定義不同的個別語法定義(個別SQL語法)的1個以上的個別語法項目(標籤定義),並且按照每個前述1個以上的基本語法項目的任一者均不同的個別語法項目,記憶定義個別語法項目的個別項目定義(標籤定義)。
前述基本項目定義取得部(211)係在被記憶在前述個別語法記憶部的前述1個以上的個別語法項目之中選擇未記憶有個別項目定義的個別語法項目(S146-1),由前述基本語法記憶部取得定義與所選擇的個別語法項目為相同的基本語法項目的基本項目定義(S146-3)。
前述資料操作指令產生部(210)係根據被記憶在前述個別語法記憶部的各個別項目定義、及藉由前述基本項目定義取得部所取得的前述基本項目定義,產生前述資料操作指令(294)。
實施形態2.
說明用以輕易作成個別SQL設定檔292及產生SQL定義檔案293的形態。
以下主要說明不同於實施形態1的事項。關於省略說明的事項,係與實施形態1相同。
第12圖係實施形態2中的DB存取系統100的構成圖。
根據第12圖,說明實施形態2中的DB存取系統100的構成。
DB存取系統100(資料操作指令產生系統之一例)係與實施形態1同樣地,包括資料操作語言產生裝置200 及複數DB伺服110A、110B。
關於資料操作語言產生裝置200及複數DB伺服110A、110B的一部分構成,係省略圖示。
DB存取系統100係另外包括設定檔作成終端機300。
設定檔作成終端機300係用以作成個別SQL設定檔292及產生SQL定義檔案293的終端機裝置(例如個人電腦)。
設定檔作成終端機300(定義產生裝置之一例)係包括:個別SQL設定檔作成部310、產生SQL定義檔案作成部320及終端機記憶部390。
個別SQL設定檔作成部310係按照使用者的指示來作成個別SQL設定檔292的構成。
產生SQL定義檔案作成部320係按照使用者的指示來作成產生SQL定義檔案293的構成。
終端機記憶部390係記憶在設定檔作成終端機300中所使用的資料的記憶部。例如,終端機記憶部390係記憶表示產生SQL定義檔案293所定義之設定選擇之項目的設定選擇資訊391。此外,例如,終端機記憶部390係記憶基本SQL設定檔291、個別SQL設定檔292及產生SQL定義檔案293(省略圖示)。
第13圖係顯示實施形態2中的個別SQL設定檔作成畫面400之一例圖。
根據第13圖,說明將構成基本SQL語法的標籤重新排列來定義SELECT指令的個別SQL語法之例。
在此,使用者係設定成預先作成基本SQL設定檔291及設定選擇資訊391者。
例如,設定檔作成終端機300包括作成基本SQL設定檔291的基本SQL設定檔作成部(省略圖示)。使用者係將基本SQL設定檔291的資訊輸入至設定檔作成終端機300。例如,輸入係使用鍵盤或滑鼠等輸入裝置來進行(以下關於輸入亦同)。設定檔作成終端機300的基本SQL設定檔作成部係按照所被輸入的資訊,作成基本SQL設定檔291,且將所作成的基本SQL設定檔291傳送至資料操作語言產生裝置200。資料操作語言產生裝置200的通訊部(省略圖示)係接收基本SQL設定檔291,且將所接收到的基本SQL設定檔291記憶在裝置記憶部290。
例如,使用者係將表示設定選擇之項目的資訊輸入至設定檔作成終端機300,設定檔作成終端機300的產生SQL定義檔案作成部320係將所被輸入的資訊作為設定選擇資訊391而記憶在終端機記憶部390。
(1)使用者係使用鍵盤或滑鼠等輸入裝置,將DB類別名「db1」輸入至設定檔作成終端機300。
(2)個別SQL設定檔作成部310係由資料操作語言產生裝置200取得基本SQL設定檔291,由所取得的基本SQL設定檔291抽出構成基本SQL語法的標籤。以下將構成基本SQL語法的標籤稱為「基本SQL標籤」。此外,將構成個別SQL語法的標籤稱為「個別SQL標籤」。
(3)個別SQL設定檔作成部310係使用由基本SQL設定 檔291所抽出的基本SQL標籤、及由使用者所指定的DB類別「db1」,將如第13圖所示之個別SQL設定檔作成畫面400A顯示在顯示器。
個別SQL設定檔作成畫面400A係包含有:將由基本SQL設定檔291所被抽出的基本SQL標籤形成為一覽的基本SQL標籤一覽401、及用以定義個別SQL標籤的個別SQL標籤作成欄402。
個別SQL標籤作成欄402係包含:由使用者所被指定的DB類別名403、及個別SQL標籤的標籤名404。例如,標籤名404係根據預定的規則所產生。第13圖所示之標籤名404「db1_select」係將DB類別名403「db1」、及識別SELECT指令的預定的識別碼「select」以底線相連所產生的名稱。但是,亦可由使用者輸入標籤名404。
(4)使用者係操作滑鼠游標409,將構成<db1_select>的基本SQL標籤由基本SQL標籤一覽401以拖放(drag-and-drop)對個別SQL標籤作成欄402的標籤定義欄405進行設定。
但是,個別SQL設定檔作成畫面400包括「追加」「變更」「削除」等選單,使用者亦可使用選單來指定標籤定義欄405所設定之基本SQL標籤(或變更名稱的基本SQL標籤)。此外,亦可由使用者將個別SQL標籤的標籤定義輸入至標籤定義欄405。
(5)定義出個別SQL標籤<db1_select>時,使用者係操作滑鼠游標409而按下結束按鍵408。
結束按鍵408被按下時,個別SQL設定檔作成部310係 將所被定義出的內容設定在個別SQL設定檔292。
(6)若定義出全部所需個別SQL標籤,使用者係對個別SQL設定檔作成部310要求傳送個別SQL設定檔292。
個別SQL設定檔作成部310係將個別SQL設定檔292傳送至資料操作語言產生裝置200。
資料操作語言產生裝置200係接收個別SQL設定檔292,將所接收到的個別SQL設定檔292記憶在裝置記憶部290。
第14圖係顯示實施形態2中的個別SQL設定檔作成畫面400之一例圖。
根據第14圖,說明定義語法與基本SQL標籤<order_by>不同的新的個別SQL標籤<dif_order_by>之例。
但是,關於與第13圖所示之個別SQL設定檔作成畫面400A共通的部分,係省略一部分說明。
(1)使用者係將DB類別名「db1」輸入至設定檔作成終端機300。
(2)個別SQL設定檔作成部310係顯示包含基本SQL標籤一覽401及個別SQL標籤作成欄402的個別SQL設定檔作成畫面400B。
(3)使用者係將滑鼠游標409移動至基本SQL標籤一覽401之中顯示出基本SQL標籤<order_by>的部分,右點擊滑鼠。
(4)個別SQL設定檔作成部310係顯示預定的選單一覽406。例如,選單一覽406係包含3個選單「貼在個別標籤」「作成差分個別標籤」「顯示基本SQL內容」。「貼在個別標籤」係用以將基本SQL標籤設定在標籤定義欄405的選單。「作成差 分個別標籤」係用以重新定義個別SQL標籤的選單。「顯示基本SQL內容」係用以顯示基本SQL標籤之標籤定義的選單。
(5)使用者係操作滑鼠游標409,由選單一覽406選擇「作成差分個別標籤」。
(6)個別SQL設定檔作成部310係按照預定規則,產生標籤名404<dif_order_by>,顯示包含標籤名404與標籤定義欄405的個別SQL標籤作成欄402。標籤名404<dif_order_by>係在基本SQL標籤<order_by>追加文字列「dif_」的名稱。但是,亦可由使用者指定標籤名404。
(7)使用者係在標籤定義欄405輸入標籤定義,操作滑鼠游標409而按下結束按鍵408。但是,使用者亦可將可利用的基本SQL標籤,如第13圖所示以拖放而指定在標籤定義欄405。
(8)若定義出個別SQL標籤<dif_order_by>,使用者係操作滑鼠游標409而按下結束按鍵408。
若結束按鍵408被按下時,個別SQL設定檔作成部310係將所被定義的內容設定在個別SQL設定檔292。
(9)定義出所需之個別SQL標籤時,使用者係對個別SQL設定檔作成部310要求傳送個別SQL設定檔292。
接著,個別SQL設定檔作成部310係將個別SQL設定檔292傳送至資料操作語言產生裝置200,資料操作語言產生裝置200係將個別SQL設定檔292記憶在裝置記憶部290。
若使用者在第13圖或第14圖的個別SQL設定檔作成畫面400的標籤定義欄405輸入文字列,個別SQL設定 檔作成部310係檢查所被輸入的文字列是否為按照預定格式(例如BNF的格式)的正當文字列。若所被輸入的文字列為未按照預定格式的不正當文字列,個別SQL設定檔作成部310係將文字列形成為紅色文字,或顯示表示所被輸入的文字列為不正當文字列的訊息,藉此對使用者揭示錯誤。
第15圖係顯示實施形態2中的產生SQL定義檔案作成畫面410之一例圖。
根據第15圖,說明產生產生SQL定義檔案293之例。
(1)產生SQL定義檔案作成部320係根據設定選擇資訊391,將如第15圖所示之產生SQL定義檔案作成畫面410A顯示在顯示器。
產生SQL定義檔案作成畫面410A係包括:產生SQL資訊欄411、及設定選擇欄412。
產生SQL資訊欄411係包括:用以輸入個別SQL設定檔292之名稱的輸入欄413、及用以輸入產生SQL指令之名稱的輸入欄413。
設定選擇欄412係按每個設定選擇資訊391所示之設定選擇的項目(use_clause、select_distinct等)包括輸入欄413。
(2)使用者係使用鍵盤或滑鼠等輸入裝置,將設定在產生SQL定義檔案293的內容輸入至產生SQL定義檔案作成畫面410A的各輸入欄413。
(3)若在產生SQL定義檔案作成畫面410A的各輸入欄413輸入設定內容,使用者係操作滑鼠游標409而按下結束按鍵408。
若結束按鍵408被按下,產生SQL定義檔案作成部320係在產生SQL定義檔案293設定被輸入在產生SQL定義檔案作成畫面410A的各輸入欄413的設定內容。
(4)使用者係對產生SQL定義檔案作成部320要求傳送產生SQL定義檔案293。
產生SQL定義檔案作成部320係將產生SQL定義檔案293傳送至資料操作語言產生裝置200。
資料操作語言產生裝置200係接收產生SQL定義檔案293,將所接收到的產生SQL定義檔案293記憶在裝置記憶部290。
產生SQL定義檔案作成部320係檢查被輸入至產 生SQL定義檔案作成畫面410A的各輸入欄413的文字列是否為按照預定格式(例如BNF的格式)的正當文字列。若所被輸入的文字列為未按照預定格式的不正當文字列,產生SQL定義檔案作成部320係將文字列形成為紅色文字,或顯示表示所被輸入的文字列為不正當文字列的訊息,藉此對使用者揭示錯誤。
第16圖係顯示實施形態2中的產生SQL定義檔案作成畫面410之一例圖。
根據第16圖,說明利用基本SQL標籤或個別SQL標籤來產生產生SQL定義檔案293之例。
(1)產生SQL定義檔案作成部320係根據基本SQL設定檔291及個別SQL設定檔292,將如第16圖所示之產生SQL定義檔案作成畫面410B顯示在顯示器。
產生SQL定義檔案作成畫面410B係包括:基本SQL標籤一覽414、個別SQL標籤一覽415、及產生SQL指令作成欄416。
基本SQL標籤一覽414係顯示基本SQL設定檔291所包含之基本SQL標籤之一覽。
個別SQL標籤一覽415係顯示個別SQL設定檔292所包含之個別SQL標籤之一覽。
產生SQL指令作成欄416係包括用以定義產生SQL指令的產生SQL指令定義欄417。
(2)使用者係操作滑鼠游標409,將基本SQL標 籤一覽414所包含的基本SQL標籤或個別SQL標籤一覽415所包含的個別SQL標籤,以拖放設定在產生SQL指令定義欄417。
(3)若定義出產生SQL指令<user_generate_sql_1>,使用者係操作滑鼠游標409來按下結束按鍵408。
若結束按鍵408被按下,產生SQL定義檔案作成部320係在產生SQL定義檔案293設定所被定義的內容。
(4)若全部定義出所需之產生SQL指令,使用者係對產生SQL定義檔案作成部320要求傳送產生SQL定義檔案293。
產生SQL定義檔案作成部320係將產生SQL定義檔案293傳送至資料操作語言產生裝置200。
資料操作語言產生裝置200係接收產生SQL定義檔案293,將所接收到的產生SQL定義檔案293記憶在裝置記憶部290。
100‧‧‧DB存取系統
110A、110B‧‧‧DB伺服
111A、111B‧‧‧資料庫
200‧‧‧資料操作語言產生裝置
210‧‧‧SQL產生部
211‧‧‧標籤關連處理部
220‧‧‧SQL執行部
290‧‧‧裝置記憶部
291‧‧‧基本SQL設定檔
292‧‧‧個別SQL設定檔
293‧‧‧產生SQL定義檔案
294‧‧‧產生SQL
295‧‧‧SQL執行結果
296‧‧‧執行排程
297‧‧‧收集資料

Claims (7)

  1. 一種資料操作指令產生裝置,其特徵在於包括:基本語法記憶部,其係記憶構成定義用以在資料庫進行存取的資料操作指令的基本語法定義的1個以上的基本語法項目,並且按每個基本語法項目,記憶定義基本語法項目的基本項目定義;個別語法記憶部,其係記憶構成至少一部分與前述基本語法定義不同的個別語法定義的1個以上的個別語法項目,並且按前述1個以上的基本語法項目的任一者均不同的每個個別語法項目,記憶定義個別語法項目的個別項目定義;基本項目定義取得部,其係在被記憶在前述個別語法記憶部的前述1個以上的個別語法項目之中選擇未被記憶個別項目定義的個別語法項目,由前述基本語法記憶部取得定義與所選擇的個別語法項目為相同的基本語法項目的基本項目定義;及資料操作指令產生部,其係根據被記憶在前述個別語法記憶部的各個別項目定義、及藉由前述基本項目定義取得部所取得的前述基本項目定義,產生前述資料操作指令。
  2. 如申請專利範圍第1項之資料操作指令產生裝置,其中,被記憶在前述個別語法記憶部的前述各個別項目定義、及藉由前述基本項目定義取得部所取得的前述基本項目定義的任一項目定義係包含設定值的設定欄,前述資料操作指令產生裝置係包括記憶指定前述設定欄所設定的值的指定值的產生指令定義記憶部, 前述資料操作指令產生部係在被記憶在前述個別語法記憶部的各個別項目定義、藉由前述基本項目定義取得部所取得的前述基本項目定義的至少任一項目定義所包含的前述設定欄,設定被記憶在前述產生指令定義記憶部的前述指定值。
  3. 如申請專利範圍第2項之資料操作指令產生裝置,其中,前述個別語法記憶部係按定義不同的複數個別語法定義的每個個別語法定義,記憶1個以上的個別語法項目,並且按任一基本語法項目均不同的每個個別語法項目記憶個別項目定義,前述產生指令定義記憶部係記憶前述複數個別語法定義之中識別任一個別語法定義的個別語法識別碼,前述基本項目定義取得部係將藉由被記憶在前述產生指令定義記憶部的前述個別語法識別碼所被識別的個別語法定義為對象,來取得前述基本項目定義,前述資料操作指令產生部係將藉由被記憶在前述產生指令定義記憶部的前述個別語法識別碼所被識別的個別語法定義為對象,由前述個別語法記憶部取得前述各個別項目定義,前述資料操作指令產生部係根據所取得的前述各個別項目定義、及藉由前述前述基本項目定義取得部所取得的前述基本項目定義,產生前述資料操作指令。
  4. 如申請專利範圍第3項之資料操作指令產生裝置,其中,前述基本語法記憶部係記憶按1個以上的每個資料操作指 令包含1個以上的基本語法項目,並且按每個基本語法項目包含基本項目定義的資料操作指令定義,前述個別語法記憶部係按每個個別語法定義,記憶按1個以上的每個資料操作指令包含1個以上的個別語法項目,並且按任一基本語法項目均不同的每個個別語法項目包含個別項目定義的資料操作指令定義,前述產生指令定義記憶部係記憶識別任何資料操作指令的指令識別碼,前述基本項目定義取得部係在前述複數個別語法定義之中,選擇藉由前述個別語法識別碼所被識別的個別語法定義,前述基本項目定義取得部係在所選擇的前述個別語法定義的資料操作指令定義之中,選擇藉由前述指令識別碼所被識別的資料操作指令定義,前述基本項目定義取得部係以所選擇的前述資料操作指令定義為對象,取得前述基本項目定義,前述資料操作指令產生部係在前述複數的個別語法定義之中,選擇藉由前述個別語法識別碼所被識別的個別語法定義,前述資料操作指令產生部係在所選擇的前述個別語法定義的資料操作指令定義之中,選擇藉由前述指令識別碼所被識別的資料操作指令定義,前述資料操作指令產生部係以所選擇的前述資料操作指令定義為對象,取得前述各個別項目定義, 前述資料操作指令產生部係根據所取得的前述各個別項目定義、及藉由前述前述基本項目定義取得部所取得的前述基本項目定義,產生前述資料操作指令。
  5. 一種資料操作指令產生系統,其特徵在於包括:如申請專利範圍第1至4項中任一項之資料操作指令產生裝置;及定義產生裝置,其係顯示用以產生前述個別語法定義的語法定義產生畫面,根據對前述語法定義產生畫面所被輸入的資訊,產生前述個別語法定義,使所產生的前述個別語法定義記憶在前述資料操作指令產生裝置的前述個別語法記憶部。
  6. 一種資料操作指令產生方法,其特徵在於:基本語法記憶部記憶構成定義用以在資料庫進行存取的資料操作指令的基本語法定義的1個以上的基本語法項目,並且按每個基本語法項目,記憶定義基本語法項目的基本項目定義,個別語法記憶部記憶構成至少一部分與前述基本語法定義不同的個別語法定義的1個以上的個別語法項目,並且按前述1個以上的基本語法項目的任一者均不同的每個個別語法項目,記憶定義個別語法項目的個別項目定義,基本項目定義取得部在被記憶在前述個別語法記憶部的前述1個以上的個別語法項目之中,選擇未被記憶個別項目定義的個別語法項目,由前述基本語法記憶部取得定義與所選擇的個別語法項目相同的基本語法項目的基本項目定義, 資料操作指令產生部根據被記憶在前述個別語法記憶部的各個別項目定義、及藉由前述基本項目定義取得部所被取得的前述基本項目定義,產生前述資料操作指令。
  7. 一種儲存資料操作指令產生程式的儲存媒體,該程式係用以使電腦執行如申請專利範圍第6項之資料操作指令產生方法。
TW101144109A 2012-10-22 2012-11-26 資料操作指令產生裝置、資料操作指令產生系統、資料操作指令產生方法以及儲存資料操作指令產生程式的儲存媒體 TW201416893A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/077199 WO2014064746A1 (ja) 2012-10-22 2012-10-22 データ操作命令生成装置、データ操作命令生成システム、データ操作命令生成方法およびデータ操作命令生成プログラム

Publications (1)

Publication Number Publication Date
TW201416893A true TW201416893A (zh) 2014-05-01

Family

ID=50544147

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101144109A TW201416893A (zh) 2012-10-22 2012-11-26 資料操作指令產生裝置、資料操作指令產生系統、資料操作指令產生方法以及儲存資料操作指令產生程式的儲存媒體

Country Status (2)

Country Link
TW (1) TW201416893A (zh)
WO (1) WO2014064746A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI742568B (zh) * 2020-03-17 2021-10-11 昕力資訊股份有限公司 通用型資料庫模糊搜索的電腦程式產品及裝置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163446A (ja) * 1998-11-30 2000-06-16 Nec Corp 拡張可能問い合わせ処理器
JP2002366411A (ja) * 2001-06-05 2002-12-20 Adk Fuji System Kk 分散データベース共有方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI742568B (zh) * 2020-03-17 2021-10-11 昕力資訊股份有限公司 通用型資料庫模糊搜索的電腦程式產品及裝置

Also Published As

Publication number Publication date
WO2014064746A1 (ja) 2014-05-01

Similar Documents

Publication Publication Date Title
US10860787B2 (en) Systems and methods for displaying contextual revision history in an electronic document
US10606573B2 (en) System and method for computer language migration using a re-architecture tool for decomposing a legacy system and recomposing a modernized system
CN106293675B (zh) 系统静态资源加载方法及装置
US11093520B2 (en) Information extraction method and system
CN112100200A (zh) 一种基于维度模型自动化生成sql语句的方法
CN104133772A (zh) 一种自动生成测试数据的方法
US20130262968A1 (en) Apparatus and method for efficiently reviewing patent documents
JP6090850B2 (ja) ソースプログラム解析システム、ソースプログラム解析方法およびプログラム
US20080077564A1 (en) Document-search supporting apparatus and computer program product therefor
JP2018501551A (ja) 数式処理方法、装置、デバイス及びプログラム
US20090083300A1 (en) Document processing device and document processing method
CN109284469B (zh) 网页开发框架
WO2007081017A1 (ja) 文書処理装置
EP1830274A1 (en) Server device and name space issuing method
TWI834538B (zh) 介面生成系統以及介面生成方法
JP2008217534A (ja) アプリケーション画面作成システム、方法及びアプリケーションプログラム
KR20050077048A (ko) 이기종의 데이타베이스 관리시스템 통합방법 및 그 방법을실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는기록매체
CN117389538A (zh) 页面组件内容开发方法、装置、设备以及存储介质
US20080005085A1 (en) Server Device and Search Method
TW201416893A (zh) 資料操作指令產生裝置、資料操作指令產生系統、資料操作指令產生方法以及儲存資料操作指令產生程式的儲存媒體
JP2014089646A (ja) 電子データ処理装置、及び電子データ処理方法
JP2001325276A (ja) 情報処理システム、情報処理方法、コンピュータプログラム、記憶媒体及びプログラム伝送装置
JP7331384B2 (ja) 情報処理装置及びプログラム
RU2613026C1 (ru) Способ подготовки документов на языках разметки при реализации пользовательского интерфейса для работы с данными информационной системы
US20090083620A1 (en) Document processing device and document processing method