中使用 來匯入資料及相關問題

2022-02-12 22:25:54 字數 1932 閱讀 5403

向sql 中匯入excel資料時,使用ms sql的dts功能

可以很方便的匯入,同時引用dll檔案,可以在程式中對匯入過程進行控制。

建立dts包的過程如下:

1。在sql企業管理器中,工具選單選資料轉換服務,匯入資料

按照它的圖形化嚮導提示,可以一步步建立乙個dts包,可以選擇儲存在資料庫。

2。在sql企業管理器中,左邊樹形結構中選擇 資料轉化服務,本地包中

可以新建乙個包,同樣有圖形化的介面建立包:拖乙個excel資料來源,拖乙個sql資料來源

然後在任務裡選 資料轉化任務,原資料選excel源,目的選sql,然後在轉化的肩頭上選屬性

裡面可以配置轉化過程。注意帶有主鍵的資料表,要把選項中 啟用標示插入去掉

在c#裡呼叫過程如下:

private

void

rundts()

2現在專案中遇到問題:

1。插入資料時需要插入時間等excel資料來源中不存在的資料

2。excel資料來源中資料有的需要轉化,像數值形,匯入後變成了1。23131e12等形式

3。插入資料時需要從sql中查詢資料再插入

現在解決了第一條和第三條的一步分:

在上述配置 資料轉化任務 時,

dtsdestination(

"icc") 

=dtssource(

"sim number");

dtsdestination(

"imsi") 

=dtssource(

"imsi");

dtsdestination(

"pin1") 

=dtssource(

"pin1");

dtsdestination(

"puk1") 

=dtssource(

"puk1");

dtsdestination(

"pin2") 

=dtssource(

"pin2");

dtsdestination(

"puk2") 

=dtssource(

"puk2");

dtsdestination(

"msisdn") 

=dtssource(

"msisdn");

dtsdestination(

"fax") 

=dtssource(

"fax");

dtsdestination(

"data") 

=dtssource(

"data");

dtsdestination(

"barring") 

=dtssource(

"barring");

dtsdestination(

"mailformid

")  

=dtsglobalvariables(

"mailfromid

").value;

dtsdestination(

"receivedate") 

=new

date().getyear() +"

-"+new

date().getmonth() +"

-"+new

date().getdate();

return

(dtstransformstat_ok);

其中,mailfromid為全域性變數,新增方法為包 選單 屬性裡面選擇全域性變數,可在c#中對其進行賦值:

foreach

(globalvariable global 

inpackage.globalvariables)

}package.globalvariables.addglobalvariable(

"mailfromid

",mailfromid);

C 中使用windows API,及相關指標

沒有感覺到能寫些對其他人有幫助的東西 羅雲彬的 windows32位彙編那本書敲 敲到第9章了,也是第3遍看了,估計也是再看最後一兩遍了,等都抄一遍之後在看看有些什麼值得寫的吧以前用的乙個東西,能讓沒用過的人省些時間吧 c 呼叫windowsapi時,方法和c 那種取得getprocaddress的...

C 中使用clr 通用語言庫 及相關問題

1.在c 中呼叫c 程式 把c 編譯成dll或者axtive控制項,再由c呼叫 比如使用c 呼叫c 的dll swfdotnet是c 編寫的,作者的c 水平,真是令我佩服。這是個特別好的讀寫swf檔案的庫。但是,我要用在c 專案中,怎麼讓c 呼叫c 的dll呢。今天一上午都在琢磨這個問題,耽誤了很多...

jsp中使用jstl匯入html亂碼問題解決方法

在jsp中通過jst的匯入html時會出現亂碼的現象,其原因是org.apache.taglibs.st程式設計客棧andard.tag.common.core.importsupport 的charencoding的值為空則會出現charencoding為預設值也就是iso 8859 1 程式設計...