将带有十进制值的csv文件导入mySQL

将带有十进制值的csv文件导入mySQL,mysql,csv,Mysql,Csv,我正在尝试使用此语句导入以下数据: LOAD DATA LOCAL INFILE 'C:/Users/path/Desktop/decitable.csv' INTO TABLE technical_center.decitable FIELDS TERMINATED BY ';' IGNORE 1 LINES csv数据: intRow;deciRow 4;2.43 sql数据字段的格式为INT(11)和DECIMAL(11)。 执行import语句后,我收到值4和2。 mySQL工作台

我正在尝试使用此语句导入以下数据:

LOAD DATA LOCAL INFILE 'C:/Users/path/Desktop/decitable.csv'
INTO TABLE  technical_center.decitable
FIELDS TERMINATED BY ';'
IGNORE 1 LINES
csv数据:

intRow;deciRow
4;2.43
sql数据字段的格式为INT(11)和DECIMAL(11)。 执行import语句后,我收到值4和2。
mySQL工作台中的sql语句的问题在哪里

您的问题不在CSV或导入过程中,如果您需要十进制的两位数,请将十进制(10)更改为十进制(10,2)


希望这有帮助

您的十进制列不允许小数点后有任何数字。如果你想要小数点,你需要定义小数点,例如,
decimal(11,2)
。解决了我的问题。非常感谢!但不是为了钱的价值。对于其他值来说,浮点并不是比双精度更好的解决方案,除非空间是一个主要问题,而且你知道你的值的范围非常有限。“我个人推荐浮点作为更好的解决方案,以保持数字有小数或无小数”——这实际上取决于数据实际代表的是什么。例如,如果是货币价值,那么使用浮动将是一个严重的错误。(如果你不知道为什么,那么我建议你对此进行一些研究。)我没有说在什么情况下,目的是存储任何数字而不进行取整。我引用你的话,你实际上说的是“我个人会推荐浮点数作为更好的解决方案,以保持数字有小数或没有小数”。有人能告诉我为什么我仍然收到警告:第1行“…”列的1265被截断了吗?