MySQL逗号到小数点查询

MySQL逗号到小数点查询,mysql,Mysql,我用Win XP将我的C#系统安装到一台计算机上,十进制分隔符的数字格式是逗号而不是小数点,但这会干扰MySQL更新,因为当我将信息加载到我的C#系统中时,格式是“0,11”,系统将逗号视为MySQL查询的一部分。这是一个问题,因为每次我想要更新寄存器时,我都必须手动更改小数点的逗号,否则它会引发异常 有没有办法更改数据库中特定列的小数点的所有逗号?即使我已经更改了区域配置,数据库仍在以前注册的项目中保留逗号 我的表格结构: CREATE TABLE `inventario` ( `id`

我用Win XP将我的C#系统安装到一台计算机上,十进制分隔符的数字格式是逗号而不是小数点,但这会干扰MySQL更新,因为当我将信息加载到我的C#系统中时,格式是“0,11”,系统将逗号视为MySQL查询的一部分。这是一个问题,因为每次我想要更新寄存器时,我都必须手动更改小数点的逗号,否则它会引发异常

有没有办法更改数据库中特定列的小数点的所有逗号?即使我已经更改了区域配置,数据库仍在以前注册的项目中保留逗号

我的表格结构:

CREATE TABLE `inventario` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `cla` varchar(100) NOT NULL,
  `des` varchar(500) NOT NULL,
  `lin` varchar(3) NOT NULL,
  `cal` varchar(20) NOT NULL,
  `uen` varchar(20) NOT NULL,
  `can` double NOT NULL,
  `fei` varchar(10) NOT NULL,
  `fec` varchar(10) NOT NULL,
  `obs` varchar(500) NOT NULL,
  `ppu` double NOT NULL,
  `pl1` double NOT NULL,
  `pl2` double NOT NULL,
  `pl3` double NOT NULL,
  `pl4` double NOT NULL,
  `prm` double NOT NULL,
  `pr1` varchar(50) NOT NULL,
  `pr2` varchar(50) NOT NULL,
  `mnm` double NOT NULL,
  `max` double NOT NULL,
  `dias` int(10) NOT NULL DEFAULT '1',
  `categoria` varchar(50) NOT NULL,
  PRIMARY KEY (`id`,`cla`),
  UNIQUE KEY `constr_cla` (`cla`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8;
我需要更新的列是双重类型的列。 谢谢

这将选择它们,将逗号替换为点,您可以将其用于更新查询

更新版本将是

    UPDATE your_table 
SET your_double=CAST(REPLACE(CAST(your_double AS CHAR), ',', '.') AS DOUBLE)

你试过用双引号括起这些值吗?总有一天,这些缩写会让你发疯的。而且,任何时候你都会听到x1、x2等的警报声!此查询的可能重复项仅替换select中的,它可以工作,但我更喜欢更改数据的内容,是否有此查询的更新版本?非常感谢。
    UPDATE your_table 
SET your_double=CAST(REPLACE(CAST(your_double AS CHAR), ',', '.') AS DOUBLE)