php - 使用 PHP 的 mySQL 表中的增量主键

标签 php mysql sql select increment

我正在尝试使用表单发布向 mySQL 表中添加行。每行都有一个主要的我称之为 quoteID。提交新表单时,它应该将自己添加为表中的一行,并且 quoteID 比之前的 quoteID 大 1。它目前看起来像这样:

<?
session_start();
if(!session_is_registered(myusername)){
header("location:login.php");
}
include 'verify.php';
$con = mysql_connect("localhost","user","$password");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("internal", $con);

$previousOrderID = mysql_query("SELECT * FROM sourcingQuote ORDER BY quoteID DESC LIMIT 1"); 
$newOrderID = $previousOrderID + 1;

mysql_close($con);
?>

目前此表中有 4 行,quoteID 分别为 1、2、3 和 4。奇怪的是,如果我尝试:

<? echo $previousOrderID; ?><br>
<? echo $newOrderID; ?><br>

输出结果为:

Resource id #3

4

无论表中有多少行,$previousOrderID 都固定为 3。我该如何更正此问题?更重要的是,当我对它进行添加时它是正确的,但为什么它首先输出“Resource id #3”?

最佳答案

你可以通过在 phpmyadmin 中选择自动增量来做到这一点

enter image description here

或者通过 sql 示例,表名是 demo,冒号是 demo,自动递增及其主键

CREATE TABLE IF NOT EXISTS `demo` (
  `demmo` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`demmo`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

关于php - 使用 PHP 的 mySQL 表中的增量主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12490673/

相关文章:

php - 长进程 php

php - 防止网页游戏AJAX作弊

mysql - LINQ 选择不同的多列

python - 如何使用 PostgreSQL 从查询中获取列属性?

php - CakePHP的列表问题

php - 如何在网站名称上使用 Lettering.js 和 Drupal 7?

php - Propel ORM PHP LIKE * 语句

c# - 使用 Entity Framework 6 的 MySQL 的正确提供程序定义是什么?

mysql - 这个sql让我有点复杂

sql - MySQL查询帮助(涉及连接?)