所以我遇到了一个相当奇怪的问题,我在Excel中有一个列(比如说A列),其中的数据如下所示:
2015年4月11日 10:14
我还有很多其他列,但无论如何在 Excel 中的 SQL Insert 语句中,数据(复制时)如下所示:
42105.4561921296
="INSERT INTO TABLE VALUES ('"&A1&"', Etc....)" 的数据格式为“常规”,日期列的格式为“自定义”,其中有 M/DD/ YYYY MM/HH 类型内。
SQL列的数据类型是DATETIME,所以它当然不接受它得到的奇怪的数字。
有任何想法吗?更改“SQL INSERT”列的格式不会更改结果。
你是对的 - Excel 格式只会改变数字的方式显示的,而不是单元格的基础值。在本例中,单元格的值是 Excel 日期时间值,即自 1900 年 1 月 1 日以来的天数,时间采用小数。
我建议使用 ExcelTEXT
函数将 Excel 数字日期时间值转换为可插入 SQL 的文本字符串:
代替:
INSERT INTO TABLE VALUES ('"&A1&"', Etc....)"
Try:
INSERT INTO TABLE VALUES ('"&TEXT(A1,"YYYY-MM-DD HH:MM")&"', Etc...)"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)