PHP中的mysql_query()函数的返回值是什么?

$insert=mysql_query($sql,$conn);

if ($insert){
echo("<script type='text/javascript'> alert('写入成功!');location.href='index.php';</script>");
}else{
echo("<script type='text/javascript'> alert('写入失败!');location.href='insert.php';</script>");
}

问题:
$insert=mysql_query($sql,$conn)返回的是一个结果集,同时其返回值又能被if判断,又是布尔类型的变量?那结果集和布尔型变量有什么关系?我看到百度上还有人说是指针变量...到底是什么?怎么能干这么多事...

布尔值 NULL ,false, 0 ," " ,都代表为假,

mysql_query 对于 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,打印出来是 类似于 “Resource id #3" 的一个字符串,所以就为真了。

这个 “Resource id #3" 就好比是一个指示牌, 连接着你要操作的数据,用函数操作他时,例如:mysql_fetch_array($insert), 他就把从数据库调出来的结果带到函数里做参数了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-12-14
对SELECT, SHOW, DESCRIBE, EXPLAIN 等语句,如果成功,返回类型为resource的值,如果失败,返回布尔型的FALSE

对UPDATE, DELETE, DROP,INSERT等语句,成功返回TRUE,失败返回FALSE
第2个回答  2008-12-14
多看手册
mysql_query一般是用过来给MYSQL递交一个SQL语句去执行的

仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,如果查询执行不正确则返回 FALSE。对于其它类型的 SQL 语句,mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。
第3个回答  2015-08-08
mysql_select_db() 函数设置活动的 MySQL 数据库。

如果成功,则该函数返回 true。如果失败,则返回 false。
第4个回答  2021-04-04
根据SQL语句类型,如果是SELECT语句那么返回是结果集(result类型),如果是INSERT,UPDATE这些类型则返回是布尔值(BOOL值),可以参考下手册。

PHP中的mysql_query()函数的返回值是什么?
mysql_query一般是用过来给MYSQL递交一个SQL语句去执行的仅对SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,如果查询执行不正确则返回 FALSE。对于其它类型的 SQL 语句,mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。 JovenShao | 发布于2008-12-14 举报| 评论(2) 8 0 对SELECT, SHO...

php语言中的mysqli_query
返回值:针对成功的 SELECT、SHOW、DESCRIBE 或 EXPLAIN 查询,将返回一个 mysqli_result 对象。针对其他成功的查询,将返回 TRUE。如果失败,则返回 FALSE。PHP 版本:5+ 更新日志:在 PHP 5.3.0 中新增了异步查询的功能。实例 <?php$con=mysqli_connect("localhost","my_user","my_password",...

PHP中的mysqlexec函数详解mysqlexec
在PHP中,访问MySQL数据库是一个常见的操作。其中,mysql_exec是一个非常重要的函数,它可以用来执行SQL语句,实现对数据库进行增、删、改、查等操作。语法格式:mysql_exec($conn, $sql);其中,$conn是连接到MySQL数据库的标识符,$sql是要执行的SQL语句。返回值:执行成功返回TRUE,执行失败返回FALSE...

php中 (Resource id #42)
对于其它类型的 SQL 语句,mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。非 FALSE 的返回值意味着查询是合法的并能够被服务器执行。这并不说明任何有关影响到的或返回的行数。很有可能一条查询执行成功了但并未影响到或并未返回任何行。我来解释一下原话:mysql_query函数如果执行的sql语...

php mysql 获取结果集的问题??
首先看传入的参数:第一个是resource类型的结果集,是mysql_query($sql)的返回值,第二个则是传入SQL语句。参数类型不一样。再看函数体:mysql_fetch_assoc($result)接受的传入类型是resource类型,他有两种返回值的可能,一种是如果结果集存在行记录,则返回一行记录,是关联数组类型的。如果没有行记录...

php if($result && mysql_num_rows($result)>0) 这条语句是不是$result...
if的条件如果没有跟运算符那就是判断真假。为0则是假,非0则是真。这个意思是说$rusult为真 并且 影响结果集的行数大于0时 ……

我用Php做了一个简单的搜索功能,为什么SQL语句执行失败,求解释_百度...
例外,mysql_query()函数,执行成功的话,返回的是真,反之,返回的就是假 那么,if语句只需要判断真假即可,而无需进行赋值比对 我把你这段代码 if($res=mysql_query("$sql")){ echo "SQL语句执行成功";}else{ echo "SQL语句执行失败";};修改如下 echo mysql_query($sql) ? 'Sql语句执行成...

php mysql 查询只返回第一条数据
1、首先用navicat新建一个数据库database1,在database1数据库中新建一个表table2。2、在table2中添加新的数据。3、接着新建一个名称为mysql_query的数据库,在页面中用mysql_connect 函数与数据库建立连接。4、用mysql_select_db函数选择要查询的数据库。5、最后将mysql_query,php文件在浏览器中打开...

php $maxRows=mysql_result($result,0,0); 0,0是什么意思
mysql_result() 函数返回结果集中一个字段的值。如果成功,则该函数返回字段值。如果失败,则返回 false。语法 mysql_result(data,row,field)参数描述 data :必需。规定要使用的结果标识符。该标识符是 mysql_query() 函数返回的。row : 必需。规定行号。行号从 0 开始。field : 可选。规定...

为什么在使用php执行删除的时候,数据库中没有这个记录,它还是会执行...
非 FALSE 的返回值意味着查询是合法的并能够被服务器执行。这并不说明任何有关影响到的或返回的行数。 很有可能一条查询执行成功了但并未影响到或并未返回任何行。以下查询语法上有错,因此 mysql_query() 失败并返回 FALSE:Example #1 mysql_query() 例子 <php result = mysql_query("SELECT *...

相似回答