【问题标题】:incrementing numbers in mysql and php在mysql和php中递增数字
【发布时间】:2015-08-19 19:29:31
【问题描述】:

我正在创建一个少数用户将同时使用的工作编号系统。我在 php 页面上创建了一个作业编号,然后将编号保存到作业表并使用它来将其他表链接到作业。 我从一个名为 numbers 的表中获取作业编号,然后每次提交作业准备创建下一个作业时,该编号应增加 1。 但是这些数字无法正常工作。 例如,我得到 1,2,3,4,8,然后是 43,44,45,然后是 105 我不明白他们为什么会跳这么多

$job_number_query = "SELECT * FROM numbers";
            $job_result =($mysqli-> query($job_number_query)) ;
            $job_num = mysqli_fetch_assoc($job_result);
            $increment_job_number = $job_num[job_number];
            $update_job_number_query = "UPDATE numbers SET job_number = $increment_job_number +1 ";     
            $mysqli-> query($update_job_number_query);
            //echo ($customer_id);

然后我只需将 $increment_job_number 插入作业表。

我在表 numbers 中的 Job_number 字段中使用 int 我想不出一种方法来测试这些数字。我想一种方法是查看工作表并在其中添加另一个数字,但因为可能有多个用户有一个尚未提交的工作,这也会导致问题。

【问题讨论】:

  • 为什么不使用自动递增字段作为工作编号

标签: php mysql numbers increment


【解决方案1】:

在没有第一个 SELECT 的情况下增加值:

UPDATE numbers SET job_number = job_number +1 

【讨论】:

    【解决方案2】:

    您的update 查询中没有where 子句,因此您要递增表中ALL 记录中的job_number 字段。

    【讨论】:

      【解决方案3】:

      最后是我技术故障。我在创建页面上得到了增量数字,但不幸的是我在编辑页面上也得到了增量数字,所以每次我编辑页面时,我都会在数字表的数字字段中添加 1。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-06-12
        • 1970-01-01
        • 2016-09-05
        • 2012-04-29
        • 2014-10-08
        • 2015-03-18
        • 2014-01-02
        相关资源
        最近更新 更多