比方說:
SELECT a.name,
b.id,
c.class
FROM a
JOIN b
ON a.name = b.name
AND a.money > 100
JOIN c
ON c.x > a.y
WHERE a.address NOT IN (SELECT *
FROM xtable
JOIN ytable
ON xtable.id <> ytable.id
這樣的語法,如果要輸入到Delphi裡,對coding人員來說,一定是場惡夢,更不要說那些複雜到見鬼的SQL指令了,所以我們常會這樣打:
str := 'SELECT A.NAME, B.ID, C.CLASS FROM A JOIN B ON A.NAME = B.NAME AND A.MONEY > 100 JOIN C ON C.X > A.Y WHERE A.ADDRESS NOT IN (SELECT * FROM XTABLE JOIN YTABLE ON XTABLE.ID <> YTABLE.ID'
中間完全不間斷………
要不就是認命地自己斷行,結果中間多打或少打一個字,也得等到執行時期才抓得到錯誤…
這時候就會覺得JQuery或LINQ真是好物啊!
在這邊介紹一個好物:General SQL Parser VCL Version
它算是一個外掛的CLASS,利用USES的方式引入到專案中即可使用
目前還在深入摸索中,所以我們先借用它內附的DEMO吧!
咦!出錯了! |
這時我們再補上後執行,就會出現正確的結果了
正解! |
不只是單純的Memo,還可以搭配Rich Text |
剛剛的一行SQL轉成Delphi String型態,超方便! |
但是這套工具價值不斐
Enterprise Version: $449.95
(全部Database都適用)
Professional Version: $149.95
(每個Database版本要各別買)
但如果工作內容常會接觸到SQL語言,那麼這套工具對你來說絕對是有極大的幫助啊!
啾咪! |
沒有留言:
張貼留言