SQL SERVER 2005 交易式複寫小研究
版本:SQL SERVER 2005-sp3-4035
在「已發布」的複寫資料表內,直接使用右鍵->設計(開啟GUI介面),改完之後直接儲存
- 新增欄位(接在rowguid資料行之後):可成功儲存,並會自動發佈
- 刪除欄位:可成功儲存,並會自動發佈
- 移動欄位順序:無法儲存,失敗
- bug:刪除欄位後,會把「自動計算」的資料行設為未發布複寫,但是新增欄位的動作不會有此狀況
[已發布]的函數,右鍵->修改
- 修改內容:如果此函數沒有被其他資料表使用(計算資料行),則可成功套用
- 修改內容(已被資料表使用):無法執行,會有錯誤訊息
- 刪除:會告知已被用於複寫,無法刪除
發行項屬性
- 新增/取消勾選項目:需要重新建立快照集,但不用重新初始化
- 取消勾選「已發布」的資料表內的「欄位」:需要重新建立快照集+重新初始化
總結:
- 盡量不要在資料表內使用「有參考使用者自訂函數」的計算資料行,很容易造成複寫同步失敗
- 已發布項目,直接用GUI介面修改即可,會自動套用變更(但注意如果改資料表,欄位前後順序不要動)
- 注意前面提到的刪除欄位會造成的bug
- 新增發布項目,需要重新建立快照集,但不用重新初始化
打造M+B+W+C Open Source開發環境(4) – Code::Blocks安裝&設定
Code::Blocks官網:http://www.codeblocks.org/
下載位址:目前為8.02版本,下載請按此
安裝方式:也是安裝檔,直接執行讓它裝完即可
設定:
初次開啟程式時,會要你選擇complier,選擇我們剛才裝的MinGW即可(GCC),Code::Block會幫你處理好所有相關的設定
一般來說,如果前面步驟都正確的話,現在已經可以開一個Console Application專案來試試看了,應該可以順利的看到Hellow World字樣出現在螢幕上
進階設定:
接下來我們要讓先前辛苦編譯的Boost和wxWidgets可以使用,必須要再做一些設定
- 設定Global variabels: 工具列-> settings->Global variables
- 設定wxWidgets的路徑

- 設定Boost的路徑

只要設定「base」的路徑,程式就會自動去對應其下的「include」和「lib」目錄,很方便吧~
因為boost編譯的目錄型態比較特殊,所以我們要分別去幫他指定
補充說明:Global variable設定完之後,我們就可以利用$(#關鍵字)去取用該目錄,不用再輸入落落長的路徑
- 設定wxWidgets的路徑
- 設定complier和linker的搜尋目錄:工具列-> settings->complier and debugger
- 設定complier - 輸入$(#boost.include)

- 設定linker - 輸入$(#boost.lib)

- 設定complier - 輸入$(#boost.include)
做到這裡,恭喜你已經完成M+B+W+C的環境建置,準備體驗開放原始碼的威力吧!
(也許你會有疑問,那剛才的wx變數是用來做啥?後面我們在開啟wxWidgets專案時,就會用到囉)
打造M+B+W+C Open Source開發環境(2) – Boost安裝&編譯
Boost官網:http://www.boost.org/
下載位址:目前版本為1.37.0,要下載兩個東西
安裝方式:
- 下載完成之後,先把boost壓縮檔解開,一般我會放在c:\下面
- 把Jam的壓縮檔也解開,解開後會有個目錄,裡面有一個bjam.exe和一個文字檔,全部複製到剛才解壓的boost目錄下(我是放在c:\boost_1_37_0)
編譯:
- 確認你系統path有設定給剛才安裝的 「MinGW目錄\Bin」而且裝完MinGW有重開機過,讓設定生效
- 打開「命令提示字元」(開始->執行->輸入「cmd」按enter)
- 將當前目錄移到你的boost根目錄(cd c:\boost_1_37_0 按enter)
- 輸入以下指令:
- 進行編譯(會跑一段時間,去泡杯咖啡找人聊聊天吧),編譯完就ok了
bjam --build-type=complete --toolset=gcc install
小提醒1:此方式會把boost編譯後產生的檔案自動放在c:\boost目錄內
小提醒2:bjam的設定可在命令提示字元裡面輸入bjam --help查看說明
打造M+B+W+C Open Source開發環境(1) – MinGW安裝
MinGW官網:http://www.mingw.org/
下載位址:目前是5.1.4版本,按這裡下載
安裝方式:
- 下載回來即是安裝檔,直接執行,按照指示下一步下一步即可
- 安裝完成後,請確認系統Path參數有設定到「你的MingGW安裝目錄\bin」下,然後重開機使設定生效
小提醒1:他會出現安裝選項,可以自己選擇要裝啥,一般來說我都是全選的(因為也不知道哪些可以不用裝XD)
選完之後會自動去下載需要的檔案,然後幫你裝完。
小提醒2:預設是安裝在C:\MinGW目錄下,建議你也不要亂改...
T-SQL DateDiff函式小研究
SELECT DateDiff(year,'2006/12/31 00:00:00','2006/12/31 23:59:59') = 0
SELECT DateDiff(year,'2006/12/31 00:00:00','2007/1/1 00:00:00') = 1
SELECT DateDiff(year,'2007/1/1 00:00:00','2007/12/31 23:59:59') = 0
- 在該年內都算0
- 注意:只要跨越當年就算1,不論天數(所以只差一天也可以視為year+1)
- 同理,day為單位的話,也是只要跨越當天就算1,不論秒數(所以只差1秒也可以算day +1)
VB.NET中Boolean的轉型
當 Visual Basic 將數字資料型別轉換成 Boolean 時,0 會變成 False,而其他所有值都會變成 True。
當 Visual Basic 將 Boolean 值轉換成數字型別時,False 會變成 0,而 True 會變成 -1。
My.Computer.FileSystem.SpecialDirectories
注意:此物件下附屬的所有屬性(傳回特殊目錄) 目錄路徑都是 沒有「\」號結尾的
如 My.Computer.FileSystem.SpecialDirectories.Temp
則傳回C:\Documents and Settings\chrischen.ANPS\Local Settings\Temp
若要後接檔名時要自行加上,否則路徑會有錯