2

我有一张桌子,其中一列的类型是numeric(18,9). 我正在尝试从 csv 文件批量插入此表。请注意,csv文件和表之间的列匹配。

csv 中的一列有一些以以下格式编写的数字:3E-445E-2等(其中E是权力的象征)。

尝试将数据批量插入 SQL 表时,我收到该there is a type mismatch特定列的错误。该错误肯定是由任何格式如 eg 的数字引起的5E-4

注意:当使用 excel 检查列类型时type(),所有单元格都返回 1 -> 这意味着该列是文件中的numeric类型csv

有什么办法可以克服这个错误?

谢谢,

4

1 回答 1

0

也许您可以尝试分两步进行。首先,您将数据导入到所有数字列都是 varchar 类型的其他表中,然后将其转换为十进制并插入到另一个像这样的表中。

select CONVERT(decimal(18,9), CONVERT(float, '3E-4'))
于 2013-10-01T09:03:50.987 回答