当前位置:数据库 > Excel >>

excel导入sql问题

导入sql 总共有9列 但是有一列导入的时候始终是没有内容 但是在excel里面有内容 导入sql后 那一列的内容就全没了 求解
追问:我有一列是电话列  前面几批是空的 后面有电话 请问这样导入也是空的吗?还有个列 有中文和数字 我只能导入进去数字 而 中文的那几排都是空 怎么解决
答案:9月20日 12:47 
******* 导出到excel 
EXEC master..xp_cmdshell 'bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""' 

/*********** 导入Excel 
SELECT * 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions 


SELECT cast(cast(科目编号 as numeric(10,2)) as nvarchar(255))+' ' 转换后的别名 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions 

--------------------------------------------------------------- 

EXCEL TO SQL SERVER 
先用ODBC建立一个数据源,数据源指向sql server的表,然后用TTABLE控件联上数据库, 
再建立一个OleObject,然后用Append,Post把数据导入到EXCEL表。 
实例: 
var 
MSExcel:Variant;//定义一个全程变量 

MSExcel := CreateOleObject('Excel.Application'); 
MSExcel.WorkBooks.Open(Edit1.Text);//创建一个OleObject 

Table.Active:=true; 
Table.Append; 
Table.FieldByName('字段名').Value:=MSExcel.Cells[rows_i,1].Value; 
Table.Post;//实现导入 

如果有不明白给我mail: leo.liu@163.com 
--------------------------------------------------------------- 

不行的话 
你可以用server里的execl的空件 
excelwork.open(); 
--------------------------------------------------------------- 

那dbexpress可以连接excel吗? 
ado怎么去连接excel?谢谢 
---------------------- 
不能, 
要连接excel(把它当成数据库连接)只能用ado来做. 
其连接字符串的一个示例: 
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""" 
注意 
Properties=""Excel 8.0;HDR=Yes;IMEX=1""是一个参数,而不是多个
其他:我想你应该是用openrowset来读取Excel数据到SQL的吧。
以前我也碰到过的。

检查那列的数据类型是不是一致。
比如,开头几行是数字,后面的是字符,或反之,或开头是空,后面有数据,
等都会导致这种情况发生。 

上一个:在一个aspx页面中打开了一个excel表,想把表上的数据写到后台数据库中
下一个:java把excel文件导入数据库报错!!

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,