2010年8月17日 星期二

DB物件原始碼檢視表(二)

週六難得能在台灣聆聽大前博士的講座,之間博士讓我看到人口已經步入老齡化的事實,抗老性產品從實際的保養品到養生抗老應有的心理準備和生活態度,此為講座的收穫之其一。 在博士的想法中,三十到四十歲的三十世代正值上班族的體能巔峰,若不能在此世代站上公司的管理層,之後的機會終將遞減為零。大多數的創業者早在其二十世代自行創業,在三十世代則是事業發展暢旺期。

檢視我的工作狀況,對於從單純的Insert Into和Update語法進化到較複雜的狀況感到欣喜。趁此機緣,卯起來的寫,將2010年七月以前的MSQL開發心得做一個整理。簡單整理出來只為這一個自私的理由,將現階段所用到的留下記錄,或許將成為日後成長的軌跡和記憶。 
  • Insert Into Table1 (field1,field2,field3) select F1,F2,F3 from Table2
    ﹥Insert Into Table1 (field1,field2) select F1,F2,F3 from (select子句) as a
  • Update Table1  set F1=@s where 條件式
    ﹥Update Table1 set F1=X1
     from Table1 as a left Join (select子句) as ab on a.id=b.id
    where 條件式
近期對DB的使用再進階到系統層級,如
  • sys.objects
    ﹥說明: DB的所有物件名稱,含View、Stored Procedure、Function、Table
    ﹥屬性: View
    ﹥主要欄位:
    主要欄位: object_id, name, type,create_date,modify_date。
  • sys.all_sql_modules
    ﹥說明: 內含物件的程式碼
    ﹥屬性: View
    ﹥主要欄位: object_id, definition。
    ﹥應用:
    當專案開發到一個階段的時候,可以這樣下select * from sys.all_sqlmodules where definition like '%keyword%',篩選出某keyword存在於哪一些的物件裡。
  • 對應關係
    ﹥objects ﹥all_sql_modules (1:1)
    ﹥Key: object_id ﹥object_id

    沒有留言:

    張貼留言