【问题标题】:Remove spaces between numbers in column [closed]删除列中数字之间的空格[关闭]
【发布时间】:2023-03-14 08:51:01
【问题描述】:

我在数据库中有一个存储信用卡号的列。但有时人们输入这样的信用卡号码 1234 5678 9123 4567 这给我在处理订单时带来了很多问题。所以我试图寻找一些解决方案,我可以用它来删除数字之间的空格,但找不到。

之前:1234 5678 9123 4567

之后:1234567891234567

【问题讨论】:

  • 您不应该将 CC 编号存储在您自己的数据库中,这是一个巨大的安全风险。您应该将 CC 编号传递给您的商家 API 并存储交易 ID 以进行处理、退款等。
  • 要求代码的问题必须表明对所解决问题的基本了解。包括尝试的解决方案、为什么它们不起作用以及预期的结果。
  • 同意@Chris,存储卡号而不至少对其进行加密是一项有风险的业务(如果他们发现您的卡商可能会担心)。

标签: php mysql arrays trim


【解决方案1】:
UPDATE yourtable
SET field=REPLACE(field, ' ', '');

一定没有很努力地搜索过:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html 您的第一站应该始终是您正在使用的产品的文档...

【讨论】:

  • 非常感谢您的帮助!
【解决方案2】:

添加到 Marc B 的答案。您可以在选择时删除空格,而不是更新表格

SELECT REPLACE(field, ' ', '') FROM yourtable

【讨论】: