我自已做了一个从Excel导入数据到MSSQL/MySQL的小功能。
发现一个问题,就是从Excel读出文本字段数据时,凡是长度超过255字符的数据都无法读完全,超出的都被省略掉了,似乎在C#把Excel当数据库一样读时,自动将Excel的所有字段都默认成Varchar(255)类型的,而无法将其视为text类型。请问各位大侠们是如何从Excel导入数据的,或者说在做这方面的软件时是否也遇到了这种问题,是如何解决的。再或者说,你们有什么好的数据导入导出软件,发个来用用。在此先谢了,呵呵。我是C#菜鸟,刚学会一些皮毛,很多东西都还是很懂,因此敬请各位高手多多指教,呵呵。

解决方案 »

  1.   

    Excel导入数据到MSSQL有自带的导入方式,也有sqlExcel 可以先读到DataSet 然后在写回数据库
    导出的时候传参是Varchar 不要用varchar(255)
      

  2.   

    EXCEL 有个选择性粘贴的功能,先把大于255的列分成几个列,到SQL里再合并.
      

  3.   

    真惨,这么麻烦的呀,为什么就不能直接将整个Excel字段作为text类型读出其字段中的所有字符串呢,555~~~~~
      

  4.   


    要先反大于255的列分成几个列,这是多么郁闷的一件事呀,要是N多记录的话,本来就是不想手工的去录入,所以才想一次性导入的,如果还需要这样去做的话,那导入还有意义吗?难道就没有更好的办法吗?=======================================下面是我找到的一个方法,似乎还可行,就是需要修改注册表,呵呵,现在帖出来与大家分享一下吧http://www.93cn.net/technic/list.asp?id=1854