繁体   English   中英

PHP未创建MySQL数据库

[英]PHP is not creating MySQL database

因此,我不确定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”语句。

在执行数据库创建查询时,它应该在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

您的连接由mysqli库生成:

$con = mysqli_connect

但是您正在尝试使用mysql库查询它:

mysql_query($sql,$con)

您需要对使用的库保持一致。 始终坚持使用mysqli(因为不赞成使用mysql)。

请注意,mysqli_query期望在SQL之前进行连接:

mysqli_query($con, $sql); 

您可以尝试使用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';
    }
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM