-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathreadme.txt
executable file
·199 lines (162 loc) · 6.78 KB
/
readme.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
[作品名]
DML Breaker(suVene)
(Data Manipulation Language Breaker)
[ライセンス]
GNU General Public License v3(GPLv3)
[バージョン]
1.03
[動作確認済み環境]
Max OS X(10.6.8)
[OS、配布ファイル以外に必要なソフト]
Webブラウザ(以下のブラウザで動作確認済)
・Internet Exproler 6/7/8
・Firefox 3.5
・Google Chrome 4
・Safari 4
・Opera 10
[Source]
DML Breaker - http://sourceforge.jp/projects/format-sql/
株式会社コスモス
[DML Breaker uses the following libraries]
Ext JS Library 3.0.3 licensed under GPLv3 License
http://www.extjs.com/license
[作品紹介]
SQL文のうち、DML(SELECT/INSERT/UPDATE/DELETE)を解析し、
人が見やすいDMLに変換するツールです。設計書等に転記する場合にご利用ください。
なお、DMLの構文解析機能は実装されておりませんのでご了承ください。
[導入手順]
① インストールは、ダウンロードファイル(DMLBreakerX.X.zip)を任意のディレクトリに解凍することで終了します。
[基本使用手順]
① index.html をダブルクリックします。
② 上段側のテキスト入力エリアにDMLを入力します。
③ 画面中央の「変換」ボタンを押下します。
④ 下段側のテキスト入力エリアに、変換後のDMLが出力されます。
⑤ 変換後のDMLを選択し、他の設計書等のドキュメントに「貼り付け」を行います。
[主な特徴]
- DML(SELECT/INSERT/UPDATE/DELETE)をサポートします。
- 37種類のSQLキーワードの大文字変換をサポートします。
- ローカル環境で動作が完結します。
- クリップボードを経由した、DMLテキストの入出力に対応します(IE限定機能)
- セミコロン「;」で、複数のDMLを区切ることにより、一括して変換することができます。
- 実装はJavaScript+HTMLで行っています。
[DML変換エンジンの仕様]
- SQL構文はOracle社のDatabaseに対応するDMLを基本とします。
- 字下げ(インデント)は、4文字の半角スペースで行います。
- 関数は大文字変換しません。
- 列を列挙する際に利用するカンマ(,)は、行の後方に出力します。
サブクエリも対応します。
- WHERE句の左条件カラムにインデントを揃えます。
- 整形仕様は次の通りです。
<SELECT>
SELECT構文:(副問い合わせ)
改行キーワード:SELECT, FROM句, WHERE句, GROUP BY句, ORDER BY句, HAVING句, UNION ALL
(変換前)
SELECT CustomerID, CompanyName FROM Customers WHERE CustomerID = '00001' AND CustomerName LIKE '山田%'
(変換後)
SELECT
CustomerID,
CompanyName
FROM
Customers
WHERE
CustomerID = '00001'
AND CustomerName LIKE '山田%'
<INSERT>
INSERT構文1:
(変換前)
INSERT INTO Customers (CustomerID, CompanyName) VALUES ('10001' , 'COSMOS')
(変換後)
INSERT INTO Customers (
CustomerID,
CompanyName
)
VALUES (
'10001' ,
'COSMOS'
)
INSERT構文2:
(変換前)
INSERT INTO OrgCustomers SELECT CustomerID, CompanyName FROM Customers WHERE CustomerID = '00001'
(変換後)
INSERT INTO OrgCustomers
SELECT
CustomerID,
CompanyName
FROM
Customers
WHERE
CustomerID = '00001'
<UPDATE>
UPDATE構文1:
(変換前)
UPDATE Customers SET CompanyName = 'COSMOS', RepName = '松本' WHERE CustomerID = '101000'
(変換後)
UPDATE Customers SET
CompanyName = 'COSMOS',
RepName = '松本'
WHERE
CustomerID = '101000'
UPDATE構文2:
(変換前)
UPDATE Customers SET CompanyName = (SELECT CompanyName FROM OrgCustomers WHERE CustomerID = '101000')
(変換後)
UPDATE Customers SET
CompanyName = (
SELECT
CompanyName
FROM
OrgCustomers
WHERE
CustomerID = '101000'
)
UPDATE構文3:
(変換前)
UPDATE Customers SET (CustomerID, CompanyName) = (SELECT CustomerID , CompanyName FROM OrgCustomers WHERE CustomerID = '101000'
(変換後)
UPDATE Customers SET
(CustomerID, CompanyName) = (
SELECT
CustomerID ,
CompanyName
FROM
OrgCustomers
WHERE
CustomerID = '101000'
<DELETE>
DELETE構文1:
(変換前)
DELETE FROM Customers WHERE CustomerID = '101000'
(変換後)
DELETE FROM Customers
WHERE
CustomerID = '101000'
DELETE構文2:
(変換前)
DELETE FROM Customers WHERE CompanyName = (SELECT CompanyName FROM OrgCustomers WHERE CustomerID = '101000')
(変換後)
DELETE FROM Customers
WHERE
CompanyName = (
SELECT
CompanyName
FROM
OrgCustomers
WHERE
CustomerID = '101000'
)
- 大文字変換キーワード37種は以下の通りです。
ALL,AND,ANY,AS,ASC,BETWEEN,CROSS,DELETE,DESC,DISTINCT,EXISTS,FROM,FULL,GROUP BY,HAVING,IN,INNER
INSERT INTO,IS,JOIN,LEFT,LIKE,NOT,ON,OR,ORDER BY,OUTER,RIGHT,SELECT,SET,SOME,UNION,UNION ALL
UPDATE,USING,VALUES,WHERE
[改訂履歴 DML Breaker]
2009.08.15 v0.10 初期バージョン公開
2009.10.31 v1.00 バージョン1公開
2009.11.24 v1.01 IE以外のブラウザで余分な行が出力される問題に対応
2009.12.20 v2.00 バージョン2公開
2009.12.28 v2.01 一括整形機能によるRich Textの表示改善など
[改訂履歴 DML Breaker(suVene)]
2013.02.10 v1.0.0 bugfix
2013.02.10 v1.0.1 インデント修正
2014.02.10 v1.0.2 インデント修正
2014.02.10 v1.0.3 インデント修正