phpl判断mysq数据库中的某个数据表是否存在的方法总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014236259/article/details/77165128

注意:以下都是在ThinkPHP框架中进行测试

方式1

通过查询MySQL的配置表信息

//TABLE_SCHEMA:表示数据库名 , TABLE_NAME : 表示表名  
$sql = "SELECT count(*) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='database_name' and TABLE_NAME = 'table_name'";   
$model = new \Think\Model();  
$res = $model->query($sql);
$isExist = $res[0];

方式2

查询指定数据中的所有数据表,然后比较查询的数据表是否存在

//检测表是否存在
function tableExist($tableName){
    if(empty($tableName)) return false;
    $tableName = C('DB_PREFIX').$tableName;
    $model = new \Think\Model();
    $tableArr = $model->query('SHOW TABLES');
    $_fName = 'tables_in_'.C('DB_NAME');
    return in_array($tableName, array_column($tableArr, $_fName));
}

猜你喜欢

转载自blog.csdn.net/u014236259/article/details/77165128