JP5641901B2 - Sql検証システムとその方法およびプログラム - Google Patents
Sql検証システムとその方法およびプログラム Download PDFInfo
- Publication number
- JP5641901B2 JP5641901B2 JP2010265422A JP2010265422A JP5641901B2 JP 5641901 B2 JP5641901 B2 JP 5641901B2 JP 2010265422 A JP2010265422 A JP 2010265422A JP 2010265422 A JP2010265422 A JP 2010265422A JP 5641901 B2 JP5641901 B2 JP 5641901B2
- Authority
- JP
- Japan
- Prior art keywords
- sql
- column
- entity
- diagram
- name
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
(3)また、プログラムされたコンピュータ処理を実行する処理部として、
さらにSQL予約語リスト取得処理部とプロジェクト準拠チェック処理部を設け、
プロジェクト開発規約取得処理部において、予め作成されたプロジェクト開発規約からプロジェクト開発規約情報を読み出し、プロジェクト開発規約テーブルを生成して記憶装置に格納し、SQL解析処理部において、SQL情報テーブルにおける各SQLを解析して、SQL予約語テーブルに設定された予約語と予約語以外の字句に分解し、分解した予約語を使用予約語リストに格納すると共に、分解した予約語以外の字句から、当該SQL内で使用しているエンティティ名およびエイリアス(再定義)文字列を特定し、特定したエイリアスから、当該エンティティ名を特定し、特定したエンティティ名に対してエンティティ名カラム名対応リストテーブルにおいて対応付けられたカラム名を特定し、特定したエンティティ名とカラム名と紐付けして当該SQLで使用しているエンティティ名とカラム名を格納した使用エンティティカラムリストを生成して記憶装置に格納し、ER図−SQL整合性チェック処理部において、使用エンティティカラムリストとエンティティ名カラム名対応リストテーブルを読み出し、使用エンティティカラムリストにおけるカラムがエンティティ名カラム名対応リストに存在するか否かをチェックすることで、ER図には存在しないが当該SQLで使用しているエンティティ名およびカラム名を特定し、プロジェクト準拠チェック処理部において、プロジェクト開発規約テーブルと使用予約語リストを読み出し、この使用予約語リストに格納された各SQLの予約語が、プロジェクト開発規約テーブルに格納されたプロジェクト開発規約に準拠しているかを検証し、準拠していない場合、プロジェクト準拠違反としてSQL検証結果ログに情報を格納し、出力処理部において、予め指定されたユーザ指定ディレクトリを読み出し、このディレクトリの配下にSQL検証結果ログを出力することにより、予約語を外部ファイルとして保持することで、様々な機種のSQLに対応することを可能となると共に、プロジェクトの開発規約を外部ファイルとして保持することにより、SQLがプロジェクトの開発規約に準拠しているか否かを検証することが可能となる。
101:ER図情報格納サーバ、102:ER図情報(ワークシート)、103:ネットワーク、104:ER図情報取得処理部、105:エンティティ名カラム名対応リストテーブル、106:ER図履歴情報更新処理部、107:ER図履歴情報、108:ER図履歴情報取得処理部、109:ER図履歴情報テーブル、110:SQL情報取得処理部、111:SQL情報(ワークシート)、112:SQL情報テーブル、113:プロジェクト開発規約取得処理部、114:プロジェクト開発規約、115:プロジェクト開発規約テーブル、116:SQL予約語リスト取得処理部、117:SQL予約語リスト、118:SQL予約語テーブル、119:SQL解析処理部、120:使用予約語リスト、1221:使用エンティティカラムリスト、122:ER図−SQL整合性チェック処理部、123:未使用エンティティカラムリスト、124:SQL補正処理部、125:プロジェクト準拠チェック処理部、126:出力処理部、127:ユーザ指定ディレクトリ、128:SQL補正結果、129:SQL検証結果ログ、130〜134:領域。
Claims (5)
- プログラムされたコンピュータ処理により、DB設計の際に必要なER図と、ER図より開発されたSQLとの整合性を検証するSQL検証システムであって、
プログラムされたコンピュータ処理を実行する手段として、
予め作成されたER図情報から、当該ER図を構成するエンティティ情報とカラム情報を取得し、取得した情報を用いて、当該ER図におけるエンティティ名とカラム名と対応付けたエンティティ名カラム名対応リストテーブルを生成して記憶装置に格納するER図情報取得処理手段と、
予め作成されたSQLから各SQL情報を読み出し、SQL情報テーブルを生成して記憶装置に格納するSQL情報取得処理手段と、
予め作成されたER図履歴情報から上記エンティティ情報とカラム情報の更新履歴情報を読み出し、上記エンティティ名カラム名対応リストテーブルにおける情報との差分を取得し、該取得した差分を履歴差分として上記ER図履歴情報に追加することで該ER図履歴情報を更新するER図履歴情報更新処理手段と、
該ER図履歴情報更新処理手段が更新したER図履歴情報を読み出し、ER図履歴情報テーブルを生成して記憶装置に格納するER図履歴情報取得処理手段と、
上記SQL情報テーブルにおける各SQLを解析して、予め設定された予約語以外の字句を特定し、特定した予約語以外の字句から、当該SQL内で使用しているエンティティ名およびエイリアス(再定義)文字列を特定し、特定したエイリアスから、当該SQLで使用しているエンティティ名を特定し、特定したエンティティ名に対して上記エンティティ名カラム名対応リストテーブルにおいて対応付けられたカラム名を特定し、特定したエンティティ名とカラム名と紐付けして当該SQLで使用しているエンティティ名とカラム名を格納した使用エンティティカラムリストを生成して記憶装置に格納するSQL解析処理手段と、
上記使用エンティティカラムリストと上記エンティティ名カラム名対応リストテーブルを読み出し、上記使用エンティティカラムリストにおけるカラムが上記エンティティ名カラム名対応リストに存在するか否かをチェックすることで、上記ER図には存在しないが当該SQLで使用しているエンティティ名およびカラム名を特定し、特定したカラムを登録する未使用エンティティカラムリストを生成して記憶装置に格納するER図−SQL整合性チェック処理手段と、
上記ER図履歴情報テーブルと上記未使用エンティティカラムリストを読み出し、該未使用エンティティカラムリストに存在するエンティティおよびカラムが上記ER図履歴情報テーブルに存在するか否かを判別し、存在する場合、上記未使用エンティティカラムリストにおけるエンティティ名とカラム名を、上記ER図履歴情報テーブルにおける最新のエンティティ名とカラム名に補正し、存在しない場合、補正できないSQLを登録したSQL検証結果ログを生成するSQL補正処理手段と、
予め指定されたユーザ指定ディレクトリを読み出し、該ディレクトリの配下に上記SQL補正処理手段による補正結果を出力する出力処理手段と
を有することを特徴とするSQL検証システム。 - プログラムされたコンピュータ処理により、DB設計の際に必要なER図と、ER図より開発されたSQLとの整合性を検証するSQL検証システムであって、
プログラムされたコンピュータ処理を実行する手段として、
予め作成されたER図情報から、当該ER図を構成するエンティティ情報とカラム情報を取得し、取得した情報を用いて、当該ER図におけるエンティティ名とカラム名と対応付けたエンティティ名カラム名対応リストテーブルを生成して記憶装置に格納するER図情報取得処理手段と、
予め作成されたER図履歴情報から上記エンティティ情報とカラム情報の更新履歴情報を読み出し、上記エンティティ名カラム名対応リストテーブルにおける情報との差分を取得し、該取得した差分を履歴差分として上記ER図履歴情報に追加することで該ER図履歴情報を更新するER図履歴情報更新処理手段と、
該ER図履歴情報更新処理手段が更新したER図履歴情報を読み出し、ER図履歴情報テーブルを生成して記憶装置に格納するER図履歴情報取得処理手段と、
予め作成されたSQLから各SQL情報を読み出し、SQL情報テーブルを生成して記憶装置に格納するSQL情報取得処理手段と、
予め作成されたプロジェクト開発規約からプロジェクト開発規約情報を読み出し、プロジェクト開発規約テーブルを生成して記憶装置に格納するプロジェクト開発規約取得処理手段と、
予め作成されたSQL予約語リストから各SQL予約語リスト情報を読み出し、SQL予約語テーブルを生成して記憶装置に格納するSQL予約語リスト取得処理手段と、
上記SQL情報テーブルにおける各SQLを解析して上記SQL予約語テーブルに格納された予約語と予約語以外の字句に分解し、分解した予約語を使用予約語リストに格納すると共に、分解した予約語以外の字句から、当該SQL内で使用しているエンティティ名およびエイリアス(再定義)文字列を特定し、特定したエイリアスから、当該SQLで使用しているエンティティ名を特定し、特定したエンティティ名に対して上記エンティティ名カラム名対応リストテーブルにおいて対応付けられたカラム名を特定し、特定したエンティティ名とカラム名と紐付けして当該SQLで使用しているエンティティ名とカラム名を格納した使用エンティティカラムリストを生成して記憶装置に格納するSQL解析処理手段と、
上記使用エンティティカラムリストと上記エンティティ名カラム名対応リストテーブルを読み出し、上記使用エンティティカラムリストにおけるカラムが上記エンティティ名カラム名対応リストに存在するか否かをチェックすることで、上記ER図には存在しないが当該SQLで使用しているエンティティ名およびカラム名を特定し、特定したカラムを登録する未使用エンティティカラムリストを生成して記憶装置に格納するER図−SQL整合性チェック処理手段と、
上記ER図履歴情報テーブルと上記未使用エンティティカラムリストを読み出し、該未使用エンティティカラムリストに存在するエンティティおよびカラムが上記ER図履歴情報テーブルに存在するか否かを判別し、存在する場合、上記未使用エンティティカラムリストにおけるエンティティ名とカラム名を、上記ER図履歴情報テーブルにおける最新のエンティティ名とカラム名に補正し、存在しない場合、補正できないSQLを登録したSQL検証結果ログを生成するSQL補正処理手段と、
上記プロジェクト開発規約テーブルと上記使用予約語リストを読み出し、該使用予約語リストに格納された各SQLの予約語が、上記プロジェクト開発規約テーブルに格納されたプロジェクト開発規約に準拠しているかを検証し、準拠していない場合、プロジェクト準拠違反としてSQL検証結果ログに情報を格納するプロジェクト準拠チェック処理手段と、
予め指定されたユーザ指定ディレクトリを読み出し、該ディレクトリの配下に上記SQL検証結果ログと上記SQL補正処理手段による補正結果を出力する出力処理手段と
を有することを特徴とするSQL検証システム。 - コンピュータを、請求項1または請求項2に記載のSQL検証システムにおける各手段として機能させるためのプログラム。
- コンピュータ装置のプログラムされたコンピュータ処理により、DB設計の際に必要なER図と、ER図より開発されたSQLとの整合性を検証するSQL検証方法であって、
プログラムされたコンピュータ処理を実行する手段として、
ER図情報取得処理手段とSQL情報取得処理手段、ER図履歴情報更新処理手段、ER図履歴情報取得処理手段、SQL解析処理手段、ER図−SQL整合性チェック処理手段、出力処理手段を具備し、
上記ER図情報取得処理手段は、予め作成されたER図情報から、当該ER図を構成するエンティティ情報とカラム情報を取得し、取得した情報を用いて、当該ER図におけるエンティティ名とカラム名と対応付けたエンティティ名カラム名対応リストテーブルを生成して記憶装置に格納し、
上記SQL情報取得処理手段は、予め作成されたSQLから各SQL情報を読み出し、SQL情報テーブルを生成して記憶装置に格納し、
上記ER図履歴情報更新処理手段は、予め作成されたER図履歴情報から上記エンティティ情報とカラム情報の更新履歴情報を読み出し、上記エンティティ名カラム名対応リストテーブルにおける情報との差分を取得し、該取得した差分を履歴差分として上記ER図履歴情報に追加することで該ER図履歴情報を更新し、
上記ER図履歴情報取得処理手段は、上記ER図履歴情報更新処理手段が更新したER図履歴情報を読み出し、ER図履歴情報テーブルを生成して記憶装置に格納し、
上記SQL解析処理手段は、上記SQL情報テーブルにおける各SQLを解析して、予め設定された予約語以外の字句を特定し、特定した予約語以外の字句から、当該SQL内で使用しているエンティティ名およびエイリアス(再定義)文字列を特定し、特定したエイリアスから、当該SQLで使用しているエンティティ名を特定し、特定したエンティティ名に対して上記エンティティ名カラム名対応リストテーブルにおいて対応付けられたカラム名を特定し、特定したエンティティ名とカラム名と紐付けして当該SQLで使用しているエンティティ名とカラム名を格納した使用エンティティカラムリストを生成して記憶装置に格納し、
上記ER図−SQL整合性チェック処理手段は、上記使用エンティティカラムリストと上記エンティティ名カラム名対応リストテーブルを読み出し、上記使用エンティティカラムリストにおけるカラムが上記エンティティ名カラム名対応リストに存在するか否かをチェックすることで、上記ER図には存在しないが当該SQLで使用しているエンティティ名およびカラム名を特定し、特定したカラムを登録する未使用エンティティカラムリストを生成して記憶装置に格納し、
上記SQL補正処理手段は、上記ER図履歴情報テーブルと上記未使用エンティティカラムリストを読み出し、該未使用エンティティカラムリストに存在するエンティティおよびカラムが上記ER図履歴情報テーブルに存在するか否かを判別し、存在する場合、上記未使用エンティティカラムリストにおけるエンティティ名とカラム名を、上記ER図履歴情報テーブルにおける最新のエンティティ名とカラム名に補正し、存在しない場合、補正できないSQLを登録したSQL検証結果ログを生成し、
上記出力処理手段は、予め指定されたユーザ指定ディレクトリを読み出し、該ディレクトリの配下に上記SQL補正処理手段による補正結果を出力する
ことを特徴とするSQL検証方法。 - コンピュータ装置のプログラムされたコンピュータ処理により、DB設計の際に必要なER図と、ER図より開発されたSQLとの整合性を検証するSQL検証方法であって、
プログラムされたコンピュータ処理を実行する手段として、
ER図情報取得処理手段とER図履歴情報更新処理手段、ER図履歴情報取得処理手段、SQL情報取得処理手段、プロジェクト開発規約取得処理手段、SQL予約語リスト取得処理手段、SQL解析処理手段、ER図−SQL整合性チェック処理手段、SQL補正処理手段、プロジェクト準拠チェック処理手段、出力処理手段を具備し、
上記ER図情報取得処理手段は、予め作成されたER図情報から、当該ER図を構成するエンティティ情報とカラム情報を取得し、取得した情報を用いて、当該ER図におけるエンティティ名とカラム名と対応付けたエンティティ名カラム名対応リストテーブルを生成して記憶装置に格納し、
上記ER図履歴情報更新処理手段は、予め作成されたER図履歴情報から上記エンティティ情報とカラム情報の更新履歴情報を読み出し、上記エンティティ名カラム名対応リストテーブルにおける情報との差分を取得し、該取得した差分を履歴差分として上記ER図履歴情報に追加することで該ER図履歴情報を更新し、
上記ER図履歴情報取得処理手段は、上記ER図履歴情報更新処理手段が更新したER図履歴情報を読み出し、ER図履歴情報テーブルを生成して記憶装置に格納し、
上記SQL情報取得処理手段は、予め作成されたSQLから各SQL情報を読み出し、SQL情報テーブルを生成して記憶装置に格納し、
上記プロジェクト開発規約取得処理手段は、予め作成されたプロジェクト開発規約からプロジェクト開発規約情報を読み出し、プロジェクト開発規約テーブルを生成して記憶装置に格納し、
上記SQL予約語リスト取得処理手段は、予め作成されたSQL予約語リストから各SQL予約語リスト情報を読み出し、SQL予約語テーブルを生成して記憶装置に格納し、
上記SQL解析処理手段は、上記SQL情報テーブルにおける各SQLを解析して上記SQL予約語テーブルに格納された予約語と予約語以外の字句に分解し、分解した予約語を使用予約語リストに格納すると共に、分解した予約語以外の字句から、当該SQL内で使用しているエンティティ名およびエイリアス(再定義)文字列を特定し、特定したエイリアスから、当該SQLで使用しているエンティティ名を特定し、特定したエンティティ名に対して上記エンティティ名カラム名対応リストテーブルにおいて対応付けられたカラム名を特定し、特定したエンティティ名とカラム名と紐付けして当該SQLで使用しているエンティティ名とカラム名を格納した使用エンティティカラムリストを生成して記憶装置に格納し、
上記ER図−SQL整合性チェック処理手段は、上記使用エンティティカラムリストと上記エンティティ名カラム名対応リストテーブルを読み出し、上記使用エンティティカラムリストにおけるカラムが上記エンティティ名カラム名対応リストに存在するか否かをチェックすることで、上記ER図には存在しないが当該SQLで使用しているエンティティ名およびカラム名を特定し、特定したカラムを登録する未使用エンティティカラムリストを生成して記憶装置に格納し、
上記SQL補正処理手段は、上記ER図履歴情報テーブルと上記未使用エンティティカラムリストを読み出し、該未使用エンティティカラムリストに存在するエンティティおよびカラムが上記ER図履歴情報テーブルに存在するか否かを判別し、存在する場合、上記未使用エンティティカラムリストにおけるエンティティ名とカラム名を、上記ER図履歴情報テーブルにおける最新のエンティティ名とカラム名に補正し、存在しない場合、補正できないSQLを登録したSQL検証結果ログを生成し、
上記プロジェクト準拠チェック処理手段は、上記プロジェクト開発規約テーブルと上記使用予約語リストを読み出し、該使用予約語リストに格納された各SQLの予約語が、上記プロジェクト開発規約テーブルに格納されたプロジェクト開発規約に準拠しているかを検証し、準拠していない場合、プロジェクト準拠違反としてSQL検証結果ログに情報を格納し、
上記出力処理手段は、予め指定されたユーザ指定ディレクトリを読み出し、該ディレクトリの配下に上記SQL検証結果ログと上記SQL補正処理手段による補正結果を出力する
ことを特徴とするSQL検証方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010265422A JP5641901B2 (ja) | 2010-11-29 | 2010-11-29 | Sql検証システムとその方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010265422A JP5641901B2 (ja) | 2010-11-29 | 2010-11-29 | Sql検証システムとその方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012118609A JP2012118609A (ja) | 2012-06-21 |
JP5641901B2 true JP5641901B2 (ja) | 2014-12-17 |
Family
ID=46501389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010265422A Expired - Fee Related JP5641901B2 (ja) | 2010-11-29 | 2010-11-29 | Sql検証システムとその方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5641901B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110413608A (zh) * | 2019-06-17 | 2019-11-05 | 平安普惠企业管理有限公司 | 数据查询方法、装置、可读存储介质和程序产品 |
KR102639897B1 (ko) * | 2021-03-11 | 2024-02-22 | 김기창 | 데이터 아키텍쳐 관리 시스템 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07325835A (ja) * | 1994-06-01 | 1995-12-12 | Mitsubishi Electric Corp | 検索文生成装置 |
JPH0934759A (ja) * | 1995-07-21 | 1997-02-07 | Omron Corp | チューニング情報作成装置およびチューニング情報作成方法 |
JP2008077285A (ja) * | 2006-09-20 | 2008-04-03 | Hitachi Information Systems Ltd | Sql管理システムとsql管理方法およびプログラム |
JP2009099111A (ja) * | 2007-09-28 | 2009-05-07 | Fujitsu Business Systems Ltd | 規則検査プログラム、規則検査方法および規則検査装置 |
-
2010
- 2010-11-29 JP JP2010265422A patent/JP5641901B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012118609A (ja) | 2012-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Küster et al. | Detecting and resolving process model differences in the absence of a change log | |
Richardson et al. | EasyVVUQ: a library for verification, validation and uncertainty quantification in high performance computing | |
US20060235899A1 (en) | Method of migrating legacy database systems | |
US11379467B2 (en) | System for uploading information into a metadata repository | |
CN108984155A (zh) | 数据处理流程设定方法和装置 | |
CN115543402B (zh) | 一种基于代码提交的软件知识图谱增量更新方法 | |
CN111367893A (zh) | 数据库版本迭代的方法及装置 | |
CN109614315A (zh) | 一种数据同步测试用例的自动生成方法及系统 | |
Müller et al. | A model-based approach to impact analysis using model differencing | |
CN115809065A (zh) | 一种低代码开发平台、数据存储方法及电子设备 | |
WO2016131295A1 (zh) | 一种北向数据转换方法和装置 | |
US9244706B2 (en) | Command line shell command generation based on schema | |
JP5641901B2 (ja) | Sql検証システムとその方法およびプログラム | |
Luong et al. | A rule‐based approach for semantic annotation evolution | |
US20110023010A1 (en) | Reserved component container-based software development method and apparatus | |
CN115357269A (zh) | 一种配置信息更新方法、装置、计算机设备及存储介质 | |
Güldali et al. | TORC: test plan optimization by requirements clustering | |
KR102046567B1 (ko) | 표준사전 기반 메타데이터 변경 관리를 위한 실시간 ddl 생성방법 | |
Dhakal et al. | Library Tweets Conversion | |
JP5359446B2 (ja) | 情報処理システム、アクセスパス決定方法及びアクセスパス決定プログラム | |
JP7036760B2 (ja) | オントロジー拡張支援装置及びオントロジー拡張支援方法 | |
Cheney | Provenance, XML and the scientific web | |
JP2010165205A (ja) | モデルのテンプレート自動生成システム、方法及びプログラム | |
KR100656559B1 (ko) | Bibd 방법론을 이용하는 프로그램 자동 개발 장치 | |
Hagedorn | Implementation of Information Container for Data Drop-Exchange of Linked Building Models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130828 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140311 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140509 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20141014 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141028 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5641901 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |