如何用php判断mysql数据库里某张表是否存在

如何用php判断mysql数据库里某张表是否存在,第1张

<?php

/*

    查询数据库是否存在功能

    $sql:查询数据库的SQL语句

        $find_table:需要检查的表名

*/

    mysql_connect('localhost','root','2260375') or die('can\'t not connect database')

    if((int)check_table_is_exist('show databases','test')==1)

    {

        echo '该表存在'

    }

    else 

    {

        echo '该表不存在'

    }

    function check_table_is_exist($sql,$find_table)

    {

        $row=mysql_query($sql)

        $database=array()

        $finddatabase=$find_table

        while ($result=mysql_fetch_array($row,MYSQL_ASSOC))

        {

            $database[]=$result['Database']

        }

        unset($result,$row)

        mysql_close()

        

        /*开始判断表是否存在*/

        if(in_array($find_table,$database))

        {

            return true

        }

        else 

        {

            return false

        }

    }

    

?>

估计是的query函数是封装的mysql_query.

我测试了一下:

$sql="check table 表名"

$res=mysql_query($sql)

while ($row = mysql_fetch_assoc($res)) {

       print_r($row)

    }

    mysql_free_result($res)

    //check table 返回的结果是:

    Array

(

    [Table] =>数据库名字.表名

    [Op] => check

    [Msg_type] => status

    [Msg_text] => OK

)

你可以根据上面返回的结果来判断。

注意:你用mysql_query来执行一些语句的时候,如果执行错误讲返回false。如果没有权限,那么此函数也返回false。具体可参考此函数的php手册说明。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8504492.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-17
下一篇 2023-04-17

发表评论

登录后才能评论

评论列表(0条)

保存