我正在通过 PHPmyadmin 将 CSV 直接导入到我的数据库中。一切都很顺利,直到我检查了有小数空格的列。它没有保持小数位不变,而是简单地删除了 ', & .' 之后的所有内容。
我尝试在上传之前删除分隔符,然后它只显示完整的数字,即 125657458,并且不添加小数点。
我已将该列的数据类型设置为“DECIMAL”。
来自 CSV 的行:
瑞奇经理标准普通156,200
上传时保留小数位的结果:
瑞奇经理标准普通156
上传时不存在带小数位的结果:
瑞奇经理标准普通156200
最佳答案
DECIMAL(10,0) 表示四舍五入为整数。那么,156.200 就变成了 156,156.9 就变成了 160。你有什么例子来验证后者吗?
我注意到你使用了“,”作为小数点;您是否已将内容配置为调用“,”小数点和“。” “千位分隔符”?这不是默认设置。
DECIMAL(10,3) 将准确地取 156.789。
没有数据类型会接受具有“千位分隔符”的输入。也就是说,没有任何东西可以正确接受 123,4567,789.12(英语)或 123.456.789,12(某些欧洲)或 12,34,567.89(印度)。
关于php - 将 CSV 导入 MySQL 时保留小数位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28943131/