Heim >Backend-Entwicklung >PHP-Problem >So fragen Sie ab, ob eine Datenbank in PHP vorhanden ist

So fragen Sie ab, ob eine Datenbank in PHP vorhanden ist

藏色散人
藏色散人Original
2020-10-06 09:39:014936Durchsuche

So fragen Sie ab, ob die Datenbank in PHP vorhanden ist: 1. Verwenden Sie PDO, um festzustellen, ob die Datenbank vorhanden ist. 2. Verwenden Sie SQL-Anweisungen, um festzustellen, ob die Datenbank vorhanden ist.

So fragen Sie ab, ob eine Datenbank in PHP vorhanden ist

Empfohlen: „PHP-Video-Tutorial

PHP Ermitteln Sie, ob die Datenbank vorhanden ist

1. Zwei Methoden, um festzustellen, ob die Datenbank vorhanden ist:

1. Verwenden Sie PDO, um festzustellen, ob die Datenbank vorhanden ist

2. Verwenden Sie die SQL-Anweisungsbeurteilung

2. Methode 1 führt den Code wie folgt aus:

//$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;
}

Das obige ist der detaillierte Inhalt vonSo fragen Sie ab, ob eine Datenbank in PHP vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn