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

兄弟们哪位知道,如何用php判断mysql数据库里某张表是否存在
最新回答
暖妹

2024-05-12 00:07:48

<?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;
        }
    }
    
?>
月色染红颜

2024-05-12 00:59:41

<?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)) {
// 你的操作
}