|
從事企業(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ā)原則:
?。?).sql語(yǔ)句中的:from/select/union/where 遇到這些關(guān)鍵字會(huì)自動(dòng)換行,如果有嵌套會(huì)自動(dòng)縮進(jìn)。
?。?).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é)果都是一樣的,可以選擇自己喜歡的方式!
sql拆分后的樣子如下圖顯示:
大家如果在使用中發(fā)現(xiàn)問(wèn)題,可以回復(fù)我,并附上sql,我可以來(lái)改進(jìn) :)
程序下載地址:
http://files.cnblogs.com/linkaituo/BreakSql.rar
it知識(shí)庫(kù):SQL語(yǔ)句斷行與縮進(jìn),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。