透過 Management Studio 的 GUI 圖形介面操作的背後其實都是一堆 T-SQL 指令,但好像很少人知道如何將他實際執行的 T-SQL 取出來,其實是一個很簡單的技巧,但是卻很重要,例如說你要修改資料庫的表格或欄位名稱時,為了讓開發環境的資料庫結構(Schema)與正式主機環境的資料庫結構一致,你必須將你每次在開發環境變更的動作(T-SQL)儲存成「變更指令碼」(Changed Script),讓資料庫管理人員(DBA)可以在正式環境直接執行 T-SQL 就可以完成資料庫結構的變更,否則將會很容易造成開發主機與正式主機資料庫不一致的情況,我今天將告訴各位如何將 T-SQL 匯出成檔案或顯示在查詢視窗。
... 繼續閱讀 ...
今天第一次遇到 SQLExpress 中的資料庫大小超出限制的情況,主要是因為客戶要求所有上傳的檔案都要儲存在 SQL Server 中的緣故,所以資料庫的成長量十分驚人。
... 繼續閱讀 ...
前幾天在開發專案的時候需要複製一個資料庫用來做測試,但之前每次都手動做備份、建立新資料庫、還原資料等動作還蠻費時的,因此心血來潮寫了一段「複製資料庫」的 T-SQL 幫我執行複製資料庫的工作,自己覺得還含蠻好用的,T-SQL 程式如下:
... 繼續閱讀 ...
在開發資料庫應用的時候,我們常會使用 SQL Server Profiler 工具幫我們監控到底應用程式對資料庫下了什麼 SQL 指令,但是在 SQL Server 2005 Express 版本中並沒有提供 SQL Server Profiler 工具,只有 SQL Server 2005 標準版以上才有此工具,所以不是所有開發人員都能夠享受到 SQL Server Profiler 的強大功能。
... 繼續閱讀 ...
微軟在SQL Server 2005 有出一個 tablediff 公用程式,可以用來比較兩份資料表的資料是否一致,如果不一致的時候會幫你產生更新的 SQL 檔,幫你再目的地的表格執行INSERT,UPDATE或DELETE以進行同步動作,因為這是一支DOS介面的程式,您可以在命令提示字元之下,或是在批次檔中寫好相關的指令、參數,然後每天定時執行即可。
... 繼續閱讀 ...
在資料庫轉移時,從原主機 卸載(Detach) 資料庫檔案,並移至新主機 附加(Attach) 上去,在新主機沒有預先設定 Login 的情況下,資料庫中的 User 將無法刪除,也無法新增同名的 Login,相信有些人有遇到這樣的困擾過!
... 繼續閱讀 ...