【问题标题】:Increment value of mysql field when function executes函数执行时增加mysql字段的值
【发布时间】:2013-11-22 23:18:37
【问题描述】:

我正在创建一个新表(见下图),如何在每次执行某个 PHP 函数时将其中的数值加 1? PHP 代码是什么?

【问题讨论】:

  • UPDATE tablename SET bookings_counter = bookings_counter+1 之类的东西通常会这样做,但问题是你是否真的想这样做。请参阅下面的 Alexandre 的回答
  • @Multifromeingegno 如果您的用户删除了预订,或者您需要为老板报告统计某种类型的预订,该怎么办?几个月后,您将陷入痛苦的世界。

标签: mysql database field auto-increment


【解决方案1】:

答案很简单。不要做你想做的事。我可以在这里看到您想要创建一个预订计数器。这是一个糟糕的解决方案。您可以使用非常简单的 SQL 查询轻松获取此信息(预订数量)。

SELECT Count(*) FROM counter

一般来说,统计数据不应该出现在您的数据库中。

但是,如果您必须这样做,那么您可以使用常规的 UPDATE 语句:

UPDATE counter SET bookings_counter = bookings_counter + 1

但是,我怎么强调都不过分。每次发生事件时,它都会强制您更新统计信息。这将导致您执行更多查询并依赖可能错误的数据(如果更新失败并且您有未更新的统计信息怎么办?)

【讨论】:

  • 感谢您的回复。不幸的是我需要选择第二个选项......所以,1)我应该选择什么数据类型? 2) 如何在 PHP 代码中包装 MySQL 语法?
  • 我已经编写了正确的 SQL 查询。您应该使用整数。此时,您需要对该主题有最低程度的了解。如果您不知道如何执行 SQL 查询,那么我建议您查找有关该主题的教程。
猜你喜欢
  • 2023-03-11
  • 1970-01-01
  • 2017-04-26
  • 1970-01-01
  • 1970-01-01
  • 2013-05-09
  • 2020-03-20
  • 1970-01-01
  • 2012-07-06
相关资源
最近更新 更多