Maison  >  Article  >  développement back-end  >  Comment demander si la base de données existe en php

Comment demander si la base de données existe en php

藏色散人
藏色散人original
2020-10-06 09:39:014901parcourir

Comment demander si la base de données existe en PHP : 1. Utilisez PDO pour déterminer si la base de données existe ; 2. Utilisez des instructions SQL pour déterminer si la base de données existe.

Comment demander si la base de données existe en php

Recommandé : "Tutoriel vidéo PHP"

PHP détermine si la base de données existe

1 . Deux méthodes pour déterminer si la base de données existe :

1. Utilisez PDO pour déterminer si la base de données existe

2. Utilisez les instructions SQL pour déterminer

2. La méthode 1 s'exécute. le code comme suit :

//$config['dsn']的表示如下
$config["dsn"] => string(65) "mysql:host=127.0.0.1;port=3306;charset=utf8"
//$config['username']为数据库用户名, $config['password']:数据库密码
function isDBExist($config)
{
    $config['dsn'] = $this->parseDsn($config);//转换组为DSN字符串
 
    $conn = new PDO($config['dsn'], $config['username'], $config['password']);
    // 设置 PDO 错误模式为异常
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $sql = "show databases;";
    // 使用 exec() ,因为没有结果返回
    $res = $conn->query($sql);
    $res = $res->fetchAll(PDO::FETCH_ASSOC);
    $database_list = [];
    foreach($res as $k => $v) {
        $database_list[] = $v['Database'];
    }
    if (in_array($config['database'],$database_list)) {
        return true; // 存在
    } else {
        return false;
    }
}
2. 方法二执行代码如下:
//$config['username']为数据库用户名
function isDBExist($config)
{
       try {
 
            $rs = Db::execute("use ".$db_config["database"]);
        }catch (Exception $e)
        {
            return false;//不存在
        }
        return true;
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn