發表文章

目前顯示的是 9月, 2011的文章

Update配合JOIN

最近看到一篇文章, 作者用SSIS的方式更新某個資料表的內容 ,只是在更新時,必須再配合另一份對照表來進行更新。 雖然用SSIS來設計這種更新方式也是很快,但直接下Update配合JOIN的指令,其實也是可以達到相同的目的的。只是一般人在使用Update指令時,大都是使用基本的型式。很少會用到配合JOIN的。連我自己有時要使用時也要回想一下。所以利用這次機會,就記錄一下囉。 select * FROM Test_A update Test_A set Name = d.NewName, [Desc] = d.[Desc] from Test_A left join MappingTable d on d.OldName = Test_A.Name select * FROM Test_A Update配合JOIN時,無法為主要資料表取別名,這點是比較可惜的,如果資料表的名稱比較長的話,那就要打不少字了。

XmlSerializer需要宣告所有衍生型別

圖片
以前一直以為只要寫好Class的宣告,再用XmlSerializer::Serialize()及XmlSerializer::Deserializer()就可以很簡單地將物件轉成xml格式來匯出及匯入。沒想到,有一次在使用時,只是多加了一個衍生類別,就造成匯出xml時出現例外錯誤。 錯誤訊息如下: 看來是說不需要我新加的衍生類別,但又說要使用XmlInclude。於是就查了一下XmlInclude,原本如果有新增的衍生類別(有一個以上的衍生類別)的話,就要在基底類別加上用XmlInclude宣告的屬性。 如果不想要宣告在基底類別的話, 可以用另一個XmlSerializer的建構子,傳入所要使用的衍生類別的型別 。 使用第二種方式的好處是,當你自行再衍生出其它新的類別,而不是當初已知的類別時,就可以用第二種方式來 動態地 加入新的衍生類別。