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

 我来答
一骑当后
推荐于2018-06-15 · 知道合伙人数码行家
一骑当后
知道合伙人数码行家
采纳数:40298 获赞数:306441
网络、设备维护、电路、弱电检测。

向TA提问 私信TA
展开全部
<?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;
        }
    }
    
?>
百度网友beac79c34a
2018-06-14
知道答主
回答量:8
采纳率:0%
帮助的人:5802
展开全部
<?php
$dsn = 'mysql:host=localhost;dbname=库名';
$pdo = new PDO($dsn, '用户名', '密码');
$sql = 'show tables';
$res = $pdo->query($sql);
$res = $res->fetchAll(2);
foreach ($res as $val) {
$tables[] = $val['下标'];
}
// echo '<pre>';
// var_dump($tables);
if (!in_array('想要查询的表名', $tables)) {
// 你的操作
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式