PHP没有创建MySQL数据库

时间:2013-08-05 06:03:27

标签: php mysql database lamp

所以我不确定为什么PHP没有创建数据库。让我首先展示我的代码是什么样的,然后我将引用它给我的警告/错误:

<?php
    // Connection
    $con = mysqli_connect("localhost", "root", "1monica1");

    // Check connection
    if (mysqli_connect_errno($con))
    {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }

    // Creating a database
    // The database is called alarm_db
    $sql = "CREATE DATABASE alarm_db";
    if (mysql_query($sql, $con))
    {
        echo "Database alarm_db created sucessfully";
    }
    else
    {
        echo "Error creating database: " . mysqli_error($con);
    }
?>

我不断得到的错误和警告是:

  

警告:mysql_query():无法在第51行的B:\ DropBox \ Dropbox \ EbadlyAgha \ Ebad \ reminders.php中建立指向服务器的链接   创建数据库时出错:

第51行是if (mysql_query($sql, $con))所在的位置。此外,它不会给我mysqli_error($con)。它只是空白。

我的MySQL连接很好,因为我从未看到“无法连接到MySQL”声明。

3 个答案:

答案 0 :(得分:5)

执行数据库创建查询时,它应该在mysqli_*

if (mysqli_query($sql,$con)) {
    echo "Database alarm_db created sucessfully";
}

由于整个mysql_*扩展程序(提供名称前缀为ext/mysql PHP的所有函数)从mysql_*开始正式弃用,因此请尽量避免使用PHP v5.5.0语句。 将来删除

您可以更好地使用其他两个MySQL扩展程序:MySQLiPDO_MySQL,其中任何一个都可以用来代替ext/mysql

答案 1 :(得分:0)

你的连接是由mysqli库生成的:

$con = mysqli_connect

但是你试图使用mysql库查询它:

mysql_query($sql,$con)

您需要确定使用哪个库。始终坚持使用mysqli(因为不推荐使用mysql)。

请注意,mysqli_query需要SQL之前的连接:

mysqli_query($con, $sql); 

答案 2 :(得分:0)

您可以尝试使用PHP创建数据库:

<?php
    $con = mysql_connect('localhost', 'root', '');
    $query = mysql_query('create database alarm_db') or die(mysql_error());
    if($query)
    {
        echo 'Database is created';
    }
    else
    {
        echo 'Database is not created';
    }
?>