寫出優(yōu)美SQL語(yǔ)句的捷徑:斷行與縮進(jìn)
從事企業(yè)系統(tǒng)開(kāi)發(fā)很多年了,在系統(tǒng)的工作流分析中,少不了要分析SQL語(yǔ)句,當(dāng)系統(tǒng)積累到一定規(guī)模后,所涉及的數(shù)據(jù)庫(kù)表會(huì)以幾何數(shù)增長(zhǎng),因此會(huì)經(jīng)常碰到很長(zhǎng)的SQL語(yǔ)句,涉及到的表會(huì)達(dá)到幾十張之多,當(dāng)你拿到這樣一段SQL時(shí),需要分析各個(gè)表之間的關(guān)系,頭就有點(diǎn)大!我Google了一下,沒(méi)有找到對(duì)SQL語(yǔ)句進(jìn)行斷行及縮進(jìn)的工具,但是工作中又經(jīng)常碰到這種SQL,手動(dòng)來(lái)斷行及縮進(jìn)的話,又是一種機(jī)械重復(fù)的工作,因此"懶"勁上來(lái)了,自己周末開(kāi)發(fā)了一個(gè)簡(jiǎn)單的輔助工具,同時(shí)分享給大家,我已上傳程序提供下載。
我來(lái)簡(jiǎn)單的介紹一下開(kāi)發(fā)原則:
(1).SQL語(yǔ)句中的:from\select\union\where 遇到這些關(guān)鍵字會(huì)自動(dòng)換行,如果有嵌套會(huì)自動(dòng)縮進(jìn)。
(2).select 部分很長(zhǎng)的話也會(huì)自動(dòng)換行,case部分也會(huì)自動(dòng)換行。
程序中有3個(gè)文件:
BreakSQLCmd.exe: 命令行工具
BreakSQLUI.exe:界面工具,和命令行工具功能一樣
ObjString.dll:包含實(shí)際功能的dll
然后再介紹一下使用方法:
(1).BreakSQLCmd.exe:首先將要分拆的SQL復(fù)制(ctrl+c)一下,然后執(zhí)行BreakSQLCmd.exe,執(zhí)行成功后,分拆后的SQL就復(fù)制到粘貼板上,你在查詢分析器中粘貼(ctrl+z)就行了.界面如下圖:
(2).BreakSQLUI.exe:這個(gè)有UI,操作簡(jiǎn)單,界面如下:
這兩個(gè)exe執(zhí)行結(jié)果都是一樣的,可以選擇自己喜歡的方式!
大家如果在使用中發(fā)現(xiàn)問(wèn)題,可以回復(fù)我,并附上SQL,我可以來(lái)改進(jìn) :)
程序下載地址:http://down.51cto.com/data/162865
原文鏈接:http://www.cnblogs.com/linkaituo/archive/2011/01/23/BreakSql.html
【編輯推薦】
- 一些常用的SQL語(yǔ)句
- 查詢表結(jié)構(gòu)的SQL語(yǔ)句
- 使用SQL語(yǔ)句查詢時(shí)間段
- 巧用SQL語(yǔ)句刪除重復(fù)記錄
- 判斷字段是否存在的SQL語(yǔ)句寫法