Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.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
从Php PDO中的mysql数据库获取最大值,并向其中添加一个值_Php_Mysql_Sql_Pdo - Fatal编程技术网

从Php PDO中的mysql数据库获取最大值,并向其中添加一个值

从Php PDO中的mysql数据库获取最大值,并向其中添加一个值,php,mysql,sql,pdo,Php,Mysql,Sql,Pdo,我想从Mysql数据库中的列stud_id中获取最大值,并向其中添加1 例如:如果我得到的stud_id为10作为最大值,我应该加上1,并将结果11放回新的stud_id中,以便下一个记录,但我得到的错误是“数组到字符串转换” 我的代码是 require 'Db.class.php'; $pdo=new DB(); $studid=$pdo->query("SELECT max(stud_id) maxcount FROM t_notes"); $version = $studid+

我想从Mysql数据库中的列stud_id中获取最大值,并向其中添加1

例如:如果我得到的stud_id为10作为最大值,我应该加上1,并将结果11放回新的stud_id中,以便下一个记录,但我得到的错误是“数组到字符串转换”

我的代码是

require 'Db.class.php';

$pdo=new DB();

$studid=$pdo->query("SELECT max(stud_id) maxcount FROM t_notes");

$version = $studid+1;

echo "$version";
查询-执行SQL语句,将结果集作为PDOStatement对象返回

PDO::query()
的返回值不是单个值,而是PDOStatement对象中这些值的记录。你得把结果拿出来才行

  • (请参见该文档页面上的示例;它们使用准备好的语句–但是
    prepare
    query
    都会返回一个PDO语句来处理,因此示例中的以下几行应该可以帮助您。)

是否有任何原因
螺柱id
不是自动递增的?而且,
$studid
并不是您所想象的那样。为什么不直接使用
自动递增
?另外,您能回显/打印\r$studid并显示结果吗?@serakfalcon:我的表中使用了两个主键,因此无法自动增加字段studid
require 'Db.class.php';

$pdo=new DB();

$studid=$pdo->query("SELECT max(stud_id) maxcount FROM t_notes");

$version = $studid+1;

echo "$version";