在mysql中插入非英语小数点

时间:2011-07-08 16:08:47

标签: php mysql

如何让mysql理解整数/浮点字段中的非英语小数点?

setLocale(LC_ALL, 'da_DK.ISO-8859-1');

例如:

0,25 will be inserted as 0
0.25 will be inserted as 0.25

4 个答案:

答案 0 :(得分:13)

您不能这样做的原因之一是逗号,用于分隔INSERT语句中的字段值。

INSERT INTO a(b,c) VALUES (3,4,5)会模棱两可。

是否会导致 b=3.4 , c=5 b=3 , c=4.5

答案 1 :(得分:2)

数字不受语言环境设置的影响(在SQL Server中也是如此)。

所以你必须发送" 0.25"

答案 2 :(得分:0)

我认为最简单的方法是使用mysql对象的包装器,在查询之前和查询之后将语言环境设置为en_US.utf8,将其放回da_DK.ISO-8859-1。

看起来this与您正在寻找的相反。

答案 3 :(得分:-3)

你可能想尝试一些像REPLACE('3,1415926',',','。')