精华内容
下载资源
问答
  • = 4.0.6, PHP 5)mysql_unbuffered_query -- 向 MySQL 发送一条 SQL 查询,并不获取和缓存结果的行说明resource mysql_unbuffered_query ( string query [, resource link_identifier] )mysql_unbuffere...

    mysql_unbuffered_query

    (PHP 4 >= 4.0.6, PHP 5)

    mysql_unbuffered_query --  向 MySQL 发送一条 SQL 查询,并不获取和缓存结果的行

    说明

    resource mysql_unbuffered_query ( string query [, resource link_identifier] )

    mysql_unbuffered_query() 向 MySQL 发送一条 SQL 查询 query,但不像 mysql_query() 那样自动获取并缓存结果集。一方面,这在处理很大的结果集时会节省可观的内存。另一方面,可以在获取第一行后立即对结果集进行操作,而不用等到整个 SQL 语句都执行完毕。当使用多个数据库连接时,必须指定可选参数 link_identifier。

    注: mysql_unbuffered_query() 的好处是有代价的:在 mysql_unbuffered_query() 返回的结果集之上不能使用 mysql_num_rows() 和 mysql_data_seek()。此外在向 MySQL 发送一条新的 SQL 查询之前,必须提取掉所有未缓存的 SQL 查询所产生的结果行。

    mysql_unbuffered_query:unbuffered顾名思义不缓存,意思就是查询结果不缓存。而大多数人用的mysql_query查询结果缓存。

    mysql_unbuffered_query的好处:第一是节省内存,第二是它不用等数据获取完全以后操作,直接可以获取一条数据以后就可以操作。它的弊端是mysql_num_rows() 和 mysql_data_seek()对它无效,原因也在于它不缓存数据。下面是一个小例子:

    $link = mysql_connect('localhost','root','root');

    mysql_select_db('phpcms');

    $sql = "SELECT * FROM `phpcms_content`";

    //$result = mysql_unbuffered_query($sql,$link);

    $result = mysql_query($sql,$link);

    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

    printf ("ID: %s Name: %s", $row[0], $row[1]);

    }

    mysql_data_seek($result,0);

    echo "
    ";

    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

    printf ("ID: %s Name: %s", $row[0], $row[1]);

    }

    mysql_free_result($result);

    ?>

    如果使用mysql_query,则将结果输出两次。若用mysql_unbuffered_query则只能输出结果一次。

    mysql_unbuffered_query查询是一边查询一边给出结果.

    mysql_query是查询完所有的在给出结果.

    如同页面缓存

    自己选择吧,不过速度要求不高的话,还是用mysql_query吧

    展开全文
  • mysql_unbuffered_query...=4.0.6,PHP5)mysql_unbuffered_query--向MySQL发送一条SQL查询,并不获取和缓存结果的行说明resourcemysql_unbuffered_query(stringquery[,resourcelink_identifier])mysql_unbuffere...

    mysql_unbuffered_query

    (PHP 4 >= 4.0.6, PHP 5)mysql_unbuffered_query --  向 MySQL 发送一条 SQL 查询,并不获取和缓存结果的行

    说明resource mysql_unbuffered_query ( string query [, resource link_identifier] )

    mysql_unbuffered_query() 向 MySQL 发

    送一条 SQL 查询 query,但不像 mysql_query() 那样自动获取并缓存结果集。一方面,这在处理很大的结果集时会节省可观的内存。

    另一方面,可以在获取第一行后立即对结果集进行操作,而不用等到整个 SQL 语句都执行完毕。当使用多个数据库连接时,必须指定可选参

    数 link_identifier。

    注意: mysql_unbuffered_query() 的好处是有代价的:

    在 mysql_unbuffered_query() 返回的结果集之上不能使

    用 mysql_num_rows() 和 mysql_data_seek()。此外在向 MySQL 发送一条新的 SQL 查询之前,必须提取掉所

    有未缓存的 SQL 查询所产生的结果行。

    以上是mysql_unbuffered_query 在php手册中的解释,上网查了很多对手册中已有的解释的解释,很多人希望有个实例来更好地理解这个函数的应用,我按照给的解释,做了个实例,仅供参考:

    6001f473022896e63b995881b1aaaecd.gifCode

    1

    b2609e46f2246847c877276c063166e4.gif$link = mysql_connect('localhost','root','pwd');

    2

    bebaf9742dd49434fb9fcfa58b35bff3.gifmysql_select_db('dbname');

    3

    e26cd4c25263ab46d1a5b88a7eac3248.gif$sql = "SELECT * FROM tablename";

    4

    9876cfd59333600702db8d17abcd77d0.gif

    5

    6c6595240627628c5df65fad8f158a85.gif/*

    6

    e0f0a9f68dd6bb72ef6fc94a812e4ac1.gif注意以下两个$result,如果用mysql_query(),那么mysql_data_seek()函数将起作用,因为查询结果缓存了,如果用

    7

    e3a4c82fc495fd6177026a754d966da0.gifmysql_unbuffered_query()函数,那么mysql_data_seek()不起作用,正如它在手册中的解释,不缓存。

    8

    f7151ad24a8100c464bfd1935eb8f4de.gif*/

    9

    189fb25f089aedf7a6e78cf030cf2c55.gif

    10

    83f31e686ad7c732b48ed9a1c7c234ca.gif$result = mysql_unbuffered_query($sql,$link);

    11

    86c98dba6b207a52c348d588453648d8.gif//$result = mysql_query($sql,$link);

    12

    b4d03fc48837581b6dcb4b3a7e18ad36.gif

    13

    321b7b0296eb9defe92d0560e670f9fe.gif while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

    14

    1b93875cbe5c6b01eaba810a1438146c.gif        printf ("ID: %s  Name: %s", $row[0], $row[1]);

    15

    5d4de757dcee5a6d02085b7bbedc6763.gif

    16

    33a4e3a79ef2f1b772422ad8180f45c8.gif}

    17

    7433483a8657c3b7ecb5033d03bbb200.gif

    18

    ce22d84337f6f8d43c41e86f5730b262.gif

    19

    462a3aad308f8940ee1d8f1639ef1192.gifmysql_data_seek($result,0);

    20

    d5965e1338102f372e59b29804517b55.gif

    21

    2b505542d9bd09057af2e2d191587bbb.gif while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

    22

    4c89568b9ac5c65756481372d6322e1a.gif        printf ("ID: %s  Name: %s", $row[0], $row[1]);

    23

    16413c5e4624c4763d0d4c634aad4809.gif}

    24

    fa932f001a2fa2a0a86a46484610a908.gif

    25

    c3d7e401798beb034d11f38f2ad3f896.gif    mysql_free_result($result); 应用:对于大的结果集, mysql_unbuffered_query 每次只取一条. mysql_query是全部取出. 前者节省内存.

    展开全文
  • 展开全部|SendsanSQLquerytoMySQL*/PHP_FUNCTION(mysql_query){php_mysql_do_query(INTERNAL_FUNCTION_PARAM_PASSTHRU,MYSQL_STORE_RESULT);}staticvoidphp_mysql_do_query(INTERNAL_FUNCTION_PARAMETERS,int...

    展开全部

    |Sends an SQL query to MySQL */

    PHP_FUNCTION(mysql_query)

    {

    php_mysql_do_query(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_STORE_RESULT);

    }

    static void php_mysql_do_query(INTERNAL_FUNCTION_PARAMETERS, int use_store)

    {

    char *query;

    size_t query_len;

    zval *mysql_link = NULL;

    php_mysql_conn *mysql;

    if (zend_parse_parameters(ZEND_NUM_ARGS(), "s|r", &query, &query_len, &mysql_link) == FAILURE) {

    return;

    }

    if (!e69da5e887aa62616964757a686964616f31333337386562mysql_link) {

    zend_resource *res = php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU);

    CHECK_LINK(res);

    mysql = (php_mysql_conn*)res->ptr;

    } else {

    if (!(mysql = (php_mysql_conn *)zend_fetch_resource2(Z_RES_P(mysql_link), "MySQL-Link", le_link, le_plink))) {

    RETURN_FALSE;

    }

    }

    php_mysql_do_query_general(mysql, query, query_len, NULL, use_store, return_value);

    }

    /* {{{ php_mysql_do_query_general

    */

    static void php_mysql_do_query_general(php_mysql_conn *mysql, char *query, int query_len, char *db, int use_store, zval *return_value)

    {

    MYSQL_RES *mysql_result;

    if (db) {

    if (!php_mysql_select_db(mysql, db)) {

    RETURN_FALSE;

    }

    }

    PHPMY_UNBUFFERED_QUERY_CHECK();

    MYSQL_DISABLE_MQ;

    #ifndef MYSQL_USE_MYSQLND

    /* check explain */

    if (MySG(trace_mode)) {

    if (!strncasecmp("select", query, 6)){

    MYSQL_ROW       row;

    char *newquery;

    int newql = spprintf(&newquery, 0, "EXPLAIN %s", query);

    mysql_real_query(mysql->conn, newquery, newql);

    efree (newquery);

    if (mysql_errno(mysql->conn)) {

    php_error_docref("http://www.mysql.com/doc", E_WARNING, "%s", mysql_error(mysql->conn));

    RETURN_FALSE;

    }

    else {

    mysql_result = mysql_use_result(mysql->conn);

    while ((row = mysql_fetch_row(mysql_result))) {

    if (!strcmp("ALL", row[1])) {

    php_error_docref("http://www.mysql.com/doc", E_WARNING, "Your query requires a full tablescan (table %s, %s rows affected). Use EXPLAIN to optimize your query.", row[0], row[6]);

    } else if (!strcmp("INDEX", row[1])) {

    php_error_docref("http://www.mysql.com/doc", E_WARNING, "Your query requires a full indexscan (table %s, %s rows affected). Use EXPLAIN to optimize your query.", row[0], row[6]);

    }

    }

    mysql_free_result(mysql_result);

    }

    }

    } /* end explain */

    #endif

    /* mysql_query is binary unsafe, use mysql_real_query */

    #if MYSQL_VERSION_ID > 32199

    if (mysql_real_query(mysql->conn, query, query_len)!=0) {

    /* check possible error */

    if (MySG(trace_mode)){

    if (mysql_errno(mysql->conn)){

    php_error_docref("http://www.mysql.com/doc", E_WARNING, "%s", mysql_error(mysql->conn));

    }

    }

    RETURN_FALSE;

    }

    #else

    if (mysql_query(mysql->conn, query)!=0) {

    /* check possible error */

    if (MySG(trace_mode)){

    if (mysql_errno(mysql->conn)){

    php_error_docref("http://www.mysql.com/doc", E_WARNING, "%s", mysql_error(mysql->conn));

    }

    }

    RETURN_FALSE;

    }

    #endif

    if(use_store == MYSQL_USE_RESULT) {

    mysql_result = mysql_use_result(mysql->conn);

    } else {

    mysql_result = mysql_store_result(mysql->conn);

    }

    if (!mysql_result) {

    if (PHP_MYSQL_VALID_RESULT(mysql->conn)) { /* query should have returned rows */

    php_error_docref(NULL, E_WARNING, "Unable to save result set");

    RETURN_FALSE;

    } else {

    RETURN_TRUE;

    }

    }

    MySG(result_allocated)++;

    ZVAL_RES(return_value, zend_register_resource(mysql_result, le_result));

    if (use_store == MYSQL_USE_RESULT) {

    mysql->active_result_res = Z_RES_P(return_value);

    Z_ADDREF_P(return_value);

    }

    }

    /* }}} */

    展开全文
  • 语法mysql_query(query,connection)参数描述query必需。规定要发送的 SQL 查询。注释:查询字符串不应以分号结束。connection可选。规定 SQL 连接标识符。如果未规定,则使用上一个打开的连接。说明如果没有打开的...

    

    PHP mysql_query() 函数

    定义和用法

    mysql_query() 函数执行一条 MySQL 查询。

    语法mysql_query(query,connection)

    参数描述

    query必需。规定要发送的 SQL 查询。注释:查询字符串不应以分号结束。

    connection可选。规定 SQL 连接标识符。如果未规定,则使用上一个打开的连接。

    说明

    如果没有打开的连接,本函数会尝试无参数调用 mysql_connect() 函数来建立一个连接并使用之。

    返回值

    mysql_query() 仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,如果查询执行不正确则返回 FALSE。

    对于其它类型的 SQL 语句,mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。

    非 FALSE 的返回值意味着查询是合法的并能够被服务器执行。这并不说明任何有关影响到的或返回的行数。很有可能一条查询执行成功了但并未影响到或并未返回任何行。

    提示和注释

    注释:该函数自动对记录集进行读取和缓存。如需运行非缓存查询,请使用 mysql_unbuffered_query()。

    例子

    例子 1<?php

    $con = mysql_connect("localhost","mysql_user","mysql_pwd");

    if (!$con)

    {

    die(Could not connect:  . mysql_error());

    }

    $sql = "SELECT * FROM Person";mysql_query($sql,$con);// 一些代码mysql_close($con);

    ?>

    例子 2

    通过 mysql_query() 函数创建一个新数据库:<?php

    $con = mysql_connect("localhost","mysql_user","mysql_pwd");

    if (!$con)

    {

    die(Could not connect:  . mysql_error());

    }

    $sql = "CREATE DATABASE my_db";

    if (mysql_query($sql,$con))

    {

    echo "Database my_db created";

    }

    else

    {

    echo "Error creating database: " . mysql_error();

    }

    ?>

    展开全文
  • mysql_query() cannot be used for statements that contain binary data; you must use mysql_real_query() instead. (Binary data may contain the “\0” character, which mysql_query() interprets as the...
  • 语法 mysql_data_seek(data,row) 参数 描述 data 必需。返回类型为 resource 的结果集。该结果集从 mysql_query() 的调用中得到。 row 必需。想要设定的新的结果集指针的PHP mysql_data_seek() 函数定义和...
  • 简明现代魔法 ->... PHP mysql_query() 函数解析PHP mysql_query() 函数...语法如下:mysql_query(query,connection)参数 query 是必需。它规定要发送的 SQL 查询。注释:查询字符串不应以分号结束。参数 connect...
  • mysql_unbuffer、ed_query与mysql_query的区别发布时间:2017-07-16 12:09来源:互联网当前栏目:web技术类PHP mysql_data_seek() 函数定义和用法mysql_data_seek() 函数移动内部结果的指针。语法mysql_data_seek...
  • 定义和用法mysql_query() 函数执行一条 MySQL 查询。语法mysql_query(query,connection)参数描述query必需。规定要发送的 SQL 查询。注释:查询字符串不应以分号结束。connection可选。规定 SQL 连接标识符。如果未...
  • mysql_query简介phpmysql_query函数用于执行一个SQL语句,并返回结果,对于mysql_query返回结果类型,大家可以参考一下这篇文章《php mysql_query增删改查(update delete insert)返回值类型》$result=mysql_query(...
  • 定义和用法mysql_query() 函数执行一条 MySQL 查询。语法mysql_query(query,connection)参数描述query必需。规定要发送的 SQL 查询。注释:查询字符串不应以分号结束。connection可选。规定 SQL 连接标识符。如果未...
  • 1.看mysql_query函数定义 resourcemysql_query(string$query[,resource$link_identifier] )功能:发送唯一查询请求(不支持多个查询)到当前活动的和link_identifier关联的数据库服务器。参数:a.query 一个sql查询,...
  • 今天在对自己程序进行测试时,发现刚开始正常,过段时间后会出现“MySQL server has gone away”的错误,定位后发现是由mysql_query()函数引起的。因此上网找到如下的解决方案,但是仔细分析后,发现自己的程序是不...
  • 对于mysql_query大家都很熟悉,下面先简单介绍下mysql_unbuffered_query  mysql_unbuffered_query  (PHP 4 >= 4.0.6, PHP 5)mysql_unbuffered_query -- 向 MySQL 发送一条 SQL 查询,并不获取和缓存结果的行...
  • mysql_unbuffered_query()向MySQL发 送一条SQL查询query,但不像mysql_query()那样自动获取并缓存结果集。一方面,这在处理很大的结果集时会节省可观的内存。 另一方面,可以在获取第一行后立即对结果集进行操作,而...
  • php提示错误:Warning: mysql_query() [function.mysql-query]: Access denied for user'ODBC'@'localhost'(using password: NO)代码:
  • mysql_query() cannot be used for statements that contain binary data; you must use mysql_real_query() instead. (Binary data may contain the “\0” character, which mysql_query() interprets as the end ...
  • 参考网站:... mysql_unbuffered_query与mysql_query的区别 mysql_unbuffered_query (PHP 4 >= 4.0.6, PHP 5)mysql_unbuffered_query -- 向 MySQL 发送一条 SQ
  • PHP项目中出现Warning:mysql_query()报错如何解决发布时间:2020-12-15 16:46:17来源:亿速云阅读:91作者:Leah今天就跟大家聊聊有关PHP项目中出现Warning:mysql_query()报错如何解决,可能很多人都不太了解,为了...
  • mysql_db_query与mysql_query

    2012-06-20 10:17:32
    建议用mysql_query,不要用mysql_db_query制定数据库 附:手册上的说明 ---------------------------- resource mysql_db_query ( string database, string query [, resource link_identifier]) ... 注意...
  • author: selfimpr blog: http://blog.csdn.net/lgg201 mail: lgg860911@yahoo.com.cn item mysql_query mysql_unbuffered_query ...resource mysql_query($qu
  • mysql教程_db_query 与mysql_query 查询区别mysql_db_query/*mysql_db_query语法: int mysql_db_query(string database, string query, int [link_identifier]);mysql_db_query函数用来送出查询字符串 (query) 到...
  • Nagios之MySQL单机监控 监控MySQL的两种方法:一种是通过Nagios官方的check_mysql插件(还有第三方类似的check_mysqld插件,据介绍拥有check_mysql及...check_mysql、check_mysql_query插件使用要求MySQL库可用,可...
  • mysql_unbuffered_...= 4.0.6, PHP 5)mysql_unbuffered_query -- 向 MySQL 发送一条 SQL 查询,并不获取和缓存结果的行说明resource mysql_unbuffered_query ( string query [, resource link_identifier] )mysq...
  • C语言连接mysql简单实例入门-mysql_init,mysql_real_connect,mysql_query,mysql_close等

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 50,963
精华内容 20,385
关键字:

mysql_query

mysql 订阅