資料匯入excel時文字數字混合列問題

2021-06-13 01:14:40 字數 1156 閱讀 2309

sql server查詢分析器 查詢excel

查詢分析器:

select   *   from    

openrowset('microsoft.jet.oledb.4.0'     ,'excel   5.0;hdr=yes;database=c:/test.xls',sheet1$)  

.net 中使用

string connstr = "provider=microsoft.jet.oledb.4.0;jet oledb:database password=;extended properties='excel 8.0;data source=c:/a.xls";

注意不要增加額外的空格 否則看可能出現

伺服器: 訊息 7399,級別 16,狀態 1,行 1

ole db 提供程式 'microsoft.jet.oledb.4.0' 報錯。

[ole/db provider returned message: 找不到可安裝的 isam。]

ole db 錯誤跟蹤[ole/db provider 'microsoft.jet.oledb.4.0' idbinitialize::initialize returned 0x80004005:   ]。

這樣的錯誤

如果您的列中,含有數字和文字行的 ,您匯入的資料往往預設為數字型,因此,您的解決方案有兩個:

1、設定excel的列格式

2、 連線字串改為

string connstr = "provider=microsoft.jet.oledb.4.0;jet oledb:database password=;extended properties='excel 8.0;imex=1';data source=c:/a.xls";

關鍵點 :imex=1'

這時候 登錄檔預設按前八行進行判斷,如果前八行都是數字型的,那麼預設匯入就是數字型的,如果前八行中含有乙個非數字型單元格,匯入預設為文字型

這個時候,您也可以修改登錄檔中的預設行數,現在是8行,您也可以修改為任何行(例如10000)

登錄檔項為:

[hkey_local_machine/software/microsoft/jet/4.0/engines/excel]

"typeguessrows"=dword:00000008"

url=

oracle 匯入文字資料

create table all sales year number 38 month number 38 prd type id number 38 emp id number 38 amount number 8,2 2003 1 1 21 10034.84 2003 2 1 21 15144....

oracle 匯入文字資料

首先,建立乙個表 其次,建立乙個 ctl檔案,檔案內容如下 load data 控制檔案標識 infile f stu.txt 匯入原檔案 into table s user 向表中追加記錄 insert 預設 replace fields terminated byx 09 欄位分隔符 tab p...

mysql匯入txt文字資料

按照mysql官方文件指示下 建立資料庫和表 mysql create database menagrie 然後建立表 1 mysql create table pet name varchar 20 owner varchar 20 2 species varchar 20 char 1 birt...