你的excel数据中有双引号还是没有?

解决方案 »

  1.   

    在EXCEL里面将改行设置为文本试试。
      

  2.   

    另外sqlserver里面对应的数据列是什么类型?
      

  3.   

    SqlServer中的数据列是date类型
    excel中的数据没有双引号,就是20140328,没有双引号
      

  4.   

    excel里把该列格式转换成标准的时间格式,应该可以吧。
      

  5.   

    我的做法是这样的,先把excel中涉及日期的列改为“文本”,导入数据库,再把数据从临时表中导入到目标表中去。
    我发现即使我把excel中的相关列修改成”文本“,导入后默认的字段类型还是float
      

  6.   

    我想了一下,可以用sql2008中的字符串函数手工假如”-“符号,但那样就太过繁琐了
      

  7.   

    在excel里直接改为时间的话,该列就显示为”########“,也不行
      

  8.   

    SELECT CAST('20140304' AS DATE)
      

  9.   

    是float 没关系,转型一下就好了。CAST(CAST(CAST(日期字段 as int) as varchar) AS DATE)
      

  10.   


    cast 转下就行
    SELECT CAST(CAST(日期字段 as varchar) AS DATE)
      

  11.   

    用openrowset查询Excel,转换字段的数据类型后插入目标表.select cast([字段名] as date),*
    from openrowset('Microsoft.ACE.OLEDB.12.0',
                    'Excel 12.0;Database=[Excel文件名];HDR=YES',
                    'SELECT * FROM [sheet1$]')