Excel数据读取问题求教 怎么没人帮忙回答啊?是我没说清楚吗?或者谁给一个其它方法的例子,只要能把excel的数据导入到数据库中就行 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个问题在SQL的DTS导入时也有,试试打一下OFFICE的SP, to hfwang009(windy):我的第一行是指第一行数据,数据肯定是有的,只是“123”这个单元格的数据被转换掉了to CrazyFor(冬眠的鼹鼠)用数据库直接从excel文件导入数据完全没错。出现数据丢失主要是excel文件和dataset之间填充的时候发生的,好像是数据类型的问题?我不知道在那儿设。以前有人也问过,但好像也没解决。如我举的例中,如果123换成其它的字符串型:uio等等就没问题。 http://community.csdn.net/Expert/topic/2960/2960687.xml?temp=.4038507这个帖子的意思和我一样http://community.csdn.net/Expert/topic/2904/2904442.xml?temp=.2828943这个帖子不知道最后倒底解决没有 导入时默认第一行为列名你就是用fdf 123123 fdffdfreter…… 这里的 fdf 123也不会导入的 谢谢以上各位朋友的解答,但你们可能还是没大明白这个问题。这是代码(把excel文件作为数据源填充到dataset,再绑定到datagrid控件上):string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\aa.xls;Extended Properties=Excel 8.0;";OleDbConnection conn = new OleDbConnection(strCon);OleDbDataAdapter myCommand = new OleDbDataAdapter("select * from ["Sheet1$]",strCon); try{ myDataSet = new DataSet(); myCommand.Fill(myDataSet); dataGrid1.DataSource = myDataSet.Tables[0].DefaultView; dataGrid1.DataBind();}catch(Exception ex){ Console.WriteLine(ex.Message);}建一个excel文件aa.xls,内容:------------------------------col1 col2 col3aa 123 bb22 cc 22-------------------------------运行后可以发现有些列的值是空的。 主要是excel文件中单元格数据的格式问题。如果是sql server导出的excel,文本列中的每个单元格前有一个'分隔符。如果是其它方式直接填写时一般没有这个分隔符,所以会产生数据转换时丢失的情况。如果该列是文本类型,则需要在每个单元格前加一个'符号表示该单元格为文本型。如:aa.xls,内容:------------------------------col1 col2 col3aa '123 bb'22 cc '22 dub(dub)的方法正确,问题解决。谢谢!!! 你用过向导把excel 的数据导入数据库吗很方便的不回出现为题 的 您把excel中的该列数据格式设为文本就可以了,因为您的数据是混合的 有人把Entity framework应用到实际项目中吗? 谁可以把ASP.NET 配置详细资料发给我。 (求助)vs2005各个版本之间的转换问题 求datalist的局部更新方法? 我的AJAX控件包的所有控件都不管用了~~ 如何实现如下功能? 急用!请教一个奇怪的现象 (在线等!解决后马上结帖) 怎样让弹出的窗口(不是模态框)总在最前,除非关闭它,谢谢 关于数据库的转意字符,求助,(在线) asp.net 用户代理未处理sqlException 奇怪的问题:检验控件上传后就不起作用了! 当我点"下一页"时,datagrid就消失了!请高手帮忙看看!
to CrazyFor(冬眠的鼹鼠)用数据库直接从excel文件导入数据完全没错。出现数据丢失主要是excel文件和dataset之间填充的时候发生的,好像是数据类型的问题?我不知道在那儿设。以前有人也问过,但好像也没解决。如我举的例中,如果123换成其它的字符串型:uio等等就没问题。
这个帖子的意思和我一样
http://community.csdn.net/Expert/topic/2904/2904442.xml?temp=.2828943
这个帖子不知道最后倒底解决没有
你就是用
fdf 123
123 fdf
fdf
reter
……
这是代码(把excel文件作为数据源填充到dataset,再绑定到datagrid控件上):
string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\aa.xls;Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strCon);
OleDbDataAdapter myCommand = new OleDbDataAdapter("select * from ["Sheet1$]",strCon);
try
{
myDataSet = new DataSet();
myCommand.Fill(myDataSet);
dataGrid1.DataSource = myDataSet.Tables[0].DefaultView;
dataGrid1.DataBind();
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
建一个excel文件aa.xls,内容:
------------------------------
col1 col2 col3
aa 123 bb
22 cc 22
-------------------------------
运行后可以发现有些列的值是空的。
如果该列是文本类型,则需要在每个单元格前加一个'符号表示该单元格为文本型。如:
aa.xls,内容:
------------------------------
col1 col2 col3
aa '123 bb
'22 cc '22
很方便的不回出现为题 的