Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检查php中是否已经存在mysql数据库?_Php_Mysql_Lamp - Fatal编程技术网

如何检查php中是否已经存在mysql数据库?

如何检查php中是否已经存在mysql数据库?,php,mysql,lamp,Php,Mysql,Lamp,基本上,我想创建一个数据库,但我知道如果您想创建一个已经存在的mysql数据库,就会出现问题。那么,如何检查它是否已经存在于PHP中 以下是psuedo代码: if (database exist) {do nothing} //if it doesn't exist else {create the database} 现在我已经知道如何自己创建数据库了。这对我来说很容易,我只是不知道如何检查一个是否已经存在 SELECT SCHEMA_NAME FROM INFORMATION_SCH

基本上,我想创建一个数据库,但我知道如果您想创建一个已经存在的mysql数据库,就会出现问题。那么,如何检查它是否已经存在于PHP中

以下是psuedo代码:

if (database exist)
{do nothing}

//if it doesn't exist
else 
{create the database}
现在我已经知道如何自己创建数据库了。这对我来说很容易,我只是不知道如何检查一个是否已经存在

SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = 'DBName'
如果您只需要知道数据库是否存在,以便在尝试创建数据库时不会出现错误,只需在此处使用:

CREATE DATABASE IF NOT EXISTS DBName;
如果您只需要知道数据库是否存在,以便在尝试创建数据库时不会出现错误,只需在此处使用:

CREATE DATABASE IF NOT EXISTS DBName;

只需继续并尝试创建表。如果表已经存在,MySQL将抛出一个可以测试的错误


如果您只是想避免错误并创建表,那么您可以在CREATE语句中添加一个If NOT EXISTS子句。

继续并尝试创建表。如果表已经存在,MySQL将抛出一个可以测试的错误

如果您只是想避免错误并创建表,那么您可以在CREATE语句中添加一个If NOT EXISTS子句。

如果无法选择数据库,所有这些都返回false。 这意味着它不存在,或者您没有访问权限

bool mysql_select_db ( string $database_name [, resource $link_identifier = NULL ] )

bool mysqli_select_db ( mysqli $link , string $dbname )
PDO也可以。 或mysqli作为对象:

try {
    $mysqli = new mysqli("localhost", "my_user", "my_password");
} catch (\Exception $e) {
    echo $e->getMessage(), PHP_EOL;
}
if ($mysqli->select_db('your_database') === false) {
    // Create db
}
如果无法选择数据库,则所有这些返回false。 这意味着它不存在,或者您没有访问权限

bool mysql_select_db ( string $database_name [, resource $link_identifier = NULL ] )

bool mysqli_select_db ( mysqli $link , string $dbname )
PDO也可以。 或mysqli作为对象:

try {
    $mysqli = new mysqli("localhost", "my_user", "my_password");
} catch (\Exception $e) {
    echo $e->getMessage(), PHP_EOL;
}
if ($mysqli->select_db('your_database') === false) {
    // Create db
}

因为你想检查它是否存在,如果不存在,你想创建它,你可以同时做这两件事。我假设您具有执行以下操作所需的特权:

CREATE DATABASE IF NOT EXISTS <name of the database>;

因为你想检查它是否存在,如果不存在,你想创建它,你可以同时做这两件事。我假设您具有执行以下操作所需的特权:

CREATE DATABASE IF NOT EXISTS <name of the database>;

为什么不将IF not EXISTS子句添加到DB create语句中?大多数站点都有一个小的DB集,而dbs是手工创建的,所以这通常不是问题。为什么不将IF not EXISTS子句添加到DB create语句中呢?大多数站点都有一个小的DB集,而dbs是手工创建的,所以这通常不是问题