之前都會直接用一個loop 把所有內容,
利用StringBuilder全部串起來,最後再存成CSV檔。
一直以來都相安無事,
最近踢到鐵板了,當資料量過大時,如30萬以上,就會發生OutofMemory的Error。
2011年10月14日 星期五
2011年9月1日 星期四
2011年7月20日 星期三
SSIS - 利用GMAIL Smtp寄發MAIL
若想使用gmail來寄發mail,不能直接使用"傳送郵件工作"的,因為gmail要設特定的port,
還要輸入帳號及密碼的帳戶驗證,這些都是傳送郵件工作屬性中無法設定的。
所以,我們若要使用gmail來發送的話,就需利用"指令碼工作",來寄發mail。
程式如下:
還要輸入帳號及密碼的帳戶驗證,這些都是傳送郵件工作屬性中無法設定的。
所以,我們若要使用gmail來發送的話,就需利用"指令碼工作",來寄發mail。
程式如下:
2011年7月12日 星期二
SQL 大量insert into 效能改善
最近一直在跟SQL打仗,總想著有沒有更快的方法。
實驗對象: 共有67萬筆左右的原始資料要做清整,之後再INSERT到結果表中。
若一筆一筆CONNECTION OPEN() , CLOSE(), RUN個70萬次,一定是最慢的。
所以,就設定一次抓1000筆先把SQL組好再做INSERT。
原先的組法是
INSERT INTO A (a1,a2,a3) values ('x1','x2','x3');
INSERT INTO A (a1,a2,a3) values ('x1','x2','x3')
這樣的速度大概15分鐘run30萬筆左右。
後來發現sql 2008有新的用法,還有人寫ppt說速度會提升,寫法如下:
實驗對象: 共有67萬筆左右的原始資料要做清整,之後再INSERT到結果表中。
若一筆一筆CONNECTION OPEN() , CLOSE(), RUN個70萬次,一定是最慢的。
所以,就設定一次抓1000筆先把SQL組好再做INSERT。
原先的組法是
INSERT INTO A (a1,a2,a3) values ('x1','x2','x3');
INSERT INTO A (a1,a2,a3) values ('x1','x2','x3')
這樣的速度大概15分鐘run30萬筆左右。
後來發現sql 2008有新的用法,還有人寫ppt說速度會提升,寫法如下:
2011年7月10日 星期日
C# 取TABLE中的最大最小值~
以前,為了要取最大最小值,都要在那裡寫一個LOOP,玩比大小,最後取得最大或最小值。
(或是一些運算式,都會傻傻的,土法煉鋼)
最近因為瘋狂拜古狗大師,才發現原來有內建的FUNCTION可以用。@_@
(或是一些運算式,都會傻傻的,土法煉鋼)
最近因為瘋狂拜古狗大師,才發現原來有內建的FUNCTION可以用。@_@
2011年7月8日 星期五
C# 讀取EXCEL的日期.....
EXCEL的日期,轉出時,會變成數字。
數字字串的轉換規則如下:
數字字串的轉換規則如下:
- 整數部分: 該整數是從1900/1/1 起算, 數字 0 表示 1900/1/1.
- 小數部分: 小數部份是指佔該天的百分比, 所以 0.5 表示中午 12 點, 0.25 表示上午 6 點.
訂閱:
文章 (Atom)