Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
访问MySQL价格字段_Mysql_Database_Ms Access_Types_Sqldatatypes - Fatal编程技术网

访问MySQL价格字段

访问MySQL价格字段,mysql,database,ms-access,types,sqldatatypes,Mysql,Database,Ms Access,Types,Sqldatatypes,我正在开发一个使用ms access数据库的应用程序的新版本,因为它变得太慢了。 所以我决定使用MySQL作为数据库。我对自己的选择很满意。 问题是我有一个巨大的数据库,里面装满了价格。此价格在旧应用程序中显示正确,但在我的数据库中显示如下:'26.000000.00','71,9.00000.00','24,9.00000.00'。 场地是 'price' VARCHAR(255) NOT NULL DEFAULT '0', 我不知道如何解决这个问题。这是因为数据类型还是因为应用程序真的很

我正在开发一个使用ms access数据库的应用程序的新版本,因为它变得太慢了。 所以我决定使用MySQL作为数据库。我对自己的选择很满意。 问题是我有一个巨大的数据库,里面装满了价格。此价格在旧应用程序中显示正确,但在我的数据库中显示如下:
'26.000000.00'
'71,9.00000.00'
'24,9.00000.00'
。 场地是

'price' VARCHAR(255) NOT NULL DEFAULT '0', 

我不知道如何解决这个问题。这是因为数据类型还是因为应用程序真的很糟糕?

我认为您应该使用正确的数据类型来存储这些值,如果您试图存储价格(货币),那么您应该使用十进制数据类型

这就是文件中所说的:

定点(精确值)类型

十进制和数字类型存储精确的数字数据值。当需要保持精确精度时(例如对于货币数据),可以使用这些类型。在MySQL中,NUMERIC实现为DECIMAL,因此以下关于DECIMAL的注释同样适用于NUMERIC


您可以在此处了解更多信息:

我认为您应该使用正确的数据类型来存储这些值,如果您试图存储价格(货币),那么您应该使用十进制数据类型

这就是文件中所说的:

定点(精确值)类型

十进制和数字类型存储精确的数字数据值。当需要保持精确精度时(例如对于货币数据),可以使用这些类型。在MySQL中,NUMERIC实现为DECIMAL,因此以下关于DECIMAL的注释同样适用于NUMERIC

您可以在此处阅读更多关于此的信息:

我不知道如何解决这个问题。这是因为数据类型还是因为应用程序真的很糟糕

问题应该是数据类型。这将帮助您选择一个

此外,您可能希望将列转换为十进制(或其他数字)类型。 就像

  • 添加所需字段的新列 键入,
    ALTER TABLE herpderp add
    新的价格小数(19,4)
  • 从旧列中填充它(您需要 方便的功能,转换您的 字符串到数字)
    更新herpderp
    设定新的价格=
    便捷功能(价格)
  • 删除旧列
    ALTER TABLE herpderp drop
    列价格
  • 重命名新列 到旧名称
    更改表herpderp
    更改列新价格价格
我不知道如何解决这个问题。这是因为数据类型还是因为应用程序真的很糟糕

问题应该是数据类型。这将帮助您选择一个

此外,您可能希望将列转换为十进制(或其他数字)类型。 就像

  • 添加所需字段的新列 键入,
    ALTER TABLE herpderp add
    新的价格小数(19,4)
  • 从旧列中填充它(您需要 方便的功能,转换您的 字符串到数字)
    更新herpderp
    设定新的价格=
    便捷功能(价格)
  • 删除旧列
    ALTER TABLE herpderp drop
    列价格
  • 重命名新列 到旧名称
    更改表herpderp
    更改列新价格价格

您是如何将数据从Access传输到MySQL的?我使用了once razor sql和once bullzip ms Access访问MySQL。同样的结果。你是如何将数据从Access传输到MySQL的?我使用了once razor sql和once bullzip ms Access访问MySQL。相同的结果。尝试将类型更改为“异常”会导致类似“截断错误值”的错误。这不是我正在存储的数据,而是我必须恢复的数据。我想知道你如何解释这个数字26.000000.00,很明显,你可能会丢失一些零,这就是为什么你的数据必须被截断。尝试将类型更改为异常会导致类似“截断错误值”这样的错误。这不是我存储的数据,而是我必须恢复的数据。我想知道你如何解释这个数字26.000000.00,很明显,你可能会丢失一些零,这就是为什么你的数据必须被截断。这就是我一直在寻找的答案!谢谢这就是我一直在寻找的答案!谢谢