mysql_query() 能执行所有sql语句么?为什么我有的sql语句,在MYSQL里 能直接执行的;但是弄到PHP里用 mysql_query 就不行了呢

解决方案 »

  1.   

    CREATE TEMPORARY TABLE tmp_tablea SELECT..........;
    CREATE TEMPORARY TABLE tmp_tableb SELECT..........;SELECT * FROM tmp_tableb应该说是一段SQL语句,这段SQL语句直接在MYSQL中能正常运行的!但放在PHP里就不能了。是不是因为 CREATE TEMPORARY TABLE  ,临时表的原因啊???
      

  2.   

    mysql_query是把sql语句传送到数据库,返回的是true或false
      

  3.   


    我上面的SQL语句中,最后的一句是 select啊,应该返回资源标识符 啊
      

  4.   

    你是不是多个语句,一个mysql_query()里执行?如果这样,当然不行每次一句
      

  5.   

    mysql_query只能执行一条SQL语句,没办法一次执行多条,哪怕你一条语句很长很多段都没关系,但不能把多次对mysql的操作放到一起执行
      

  6.   

    mysql_query() 只能一次一条sql指令,这是为防止sql注入而设置的$sql =<<< SQL
    CREATE TEMPORARY TABLE tmp_tablea SELECT..........;
    CREATE TEMPORARY TABLE tmp_tableb SELECT..........;SELECT * FROM tmp_tableb
    SQL;foreach(split(";[\r\n]+", $sql) as $v) {
      $rs = mysql_query($v);
    }