SQL語句斷行與縮進

作者: DoubleBlue  來源: 博客園  發布時間: 2011-01-27 10:36  閱讀: 3040 次  推薦: 1   原文鏈接   [收藏]  
摘要:DBA們可能不會注意SQL語句的斷行與縮進,但是如果您面對幾十張之多的表,您該如何對待?其實寫出優美SQL語句并不難,只要掌握基本的方法我們就能寫出合乎閱讀的語句。

  從事企業系統開發很多年了,在系統的工作流分析中,少不了要分析sql語句,當系統積累到一定規模后,所涉及的數據庫表會以幾何數增長,因此會經常碰到很長的sql語句,涉及到的表會達到幾十張之多,當你拿到這樣一段sql時,需要分析各個表之間的關系,頭就有點大!我google了一下,沒有找到對sql語句進行斷行及縮進的工具,但是工作中又經常碰到這種sql,手動來斷行及縮進的話,又是一種機械重復的工作,因此"懶"勁上來了,自己周末開發了一個簡單的輔助工具,同時分享給大家,我已上傳程序提供下載。

  我來簡單的介紹一下開發原則:

  (1).sql語句中的:from\select\union\where 遇到這些關鍵字會自動換行,如果有嵌套會自動縮進。

  (2).select 部分很長的話也會自動換行,case部分也會自動換行。

  程序中有3個文件:

  

  BreakSqlCmd.exe: 命令行工具

  BreakSqlUI.exe:界面工具,和命令行工具功能一樣

  ObjString.dll:包含實際功能的dll

  然后再介紹一下使用方法:

  (1).BreakSqlCmd.exe:首先將要分拆的sql復制(ctrl+c)一下,然后執行BreakSqlCmd.exe,執行成功后,分拆后的sql就復制到粘貼板上,你在查詢分析器中粘貼(ctrl+z)就行了.界面如下圖:

  

  (2).BreakSqlUI.exe:這個有UI,操作簡單,界面如下: 

  這兩個exe執行結果都是一樣的,可以選擇自己喜歡的方式!

        sql拆分后的樣子如下圖顯示:

  大家如果在使用中發現問題,可以回復我,并附上sql,我可以來改進 :)

  程序下載地址:

  http://files.cnblogs.com/linkaituo/BreakSql.rar

1
0
 
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()