PHP连接MYSQL数据库的3种常用方法

下面为你详细介绍 PHP 连接 MYSQL 数据库的 3 种常用方法。

方法一:使用 mysqli 扩展

  1. 确保mysqli扩展已启用,可以通过查看php.ini文件或使用 phpinfo() 函数来检查

  2. 使用 mysqli_connect() 函数连接到 MYSQL 数据库,该函数有4个参数,分别是主机名、用户名、密码和数据库名,如下所示:

$link = mysqli_connect("localhost", "root", "password", "databaseName");
if (!$link) {
    die("连接失败:" . mysqli_connect_error());
} else {
    echo "连接成功!";
}
  1. 执行 sql 语句,示例代码如下:
$createTableSql = "CREATE TABLE `user` (
            `id` int(11) NOT NULL AUTO_INCREMENT,
            `username` varchar(20) NOT NULL,
            `password` varchar(20) NOT NULL,
            PRIMARY KEY (`id`)
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";
if(mysqli_query($link, $createTableSql)){
    echo "创建成功!";
} else{
    echo "创建失败:" . mysqli_error($link);
}

mysqli_close($link);  //关闭连接

方法二:使用 PDO 扩展

  1. 确保 PDO 扩展已启用

  2. 使用 PDO 对象连接到 MYSQL 数据库,示例代码如下:

$dsn = "mysql:host=localhost;dbname=databaseName";
$username = "root";
$password = "password";

try {
    $conn = new PDO($dsn, $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "连接成功!";
} catch(PDOException $e) {
    echo "连接失败:" . $e->getMessage();
}
  1. 执行 sql 语句,示例代码如下:
$createTableSql = "CREATE TABLE `user` (
            `id` int(11) NOT NULL AUTO_INCREMENT,
            `username` varchar(20) NOT NULL,
            `password` varchar(20) NOT NULL,
            PRIMARY KEY (`id`)
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";
try{
    $conn->exec($createTableSql);
    echo "创建成功!";
} catch(PDOException $e) {
    echo "创建失败:" . $e->getMessage();
}

$conn = null;   //关闭连接

方法三:使用类似 mysql_ 系列函数的函数

该方法已过时,不再推荐使用。若必须使用,可以在连接 MYSQL 数据库之前使用 mysql_connect() 函数连接,如下所示:

$link = mysql_connect("localhost", "root", "password");
if (!$link) {
    die("连接失败:" . mysql_error());
} else {
    mysql_select_db("databaseName", $link);
    echo "连接成功!";
}

然后可以使用 mysql_query() 函数执行 sql 语句,如下所示:

$createTableSql = "CREATE TABLE `user` (
            `id` int(11) NOT NULL AUTO_INCREMENT,
            `username` varchar(20) NOT NULL,
            `password` varchar(20) NOT NULL,
            PRIMARY KEY (`id`)
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";
if(mysql_query($createTableSql)){
    echo "创建成功!";
} else{
    echo "创建失败:" . mysql_error();
}

mysql_close($link); //关闭连接

以上是 PHP 连接 MYSQL 数据库的 3 种常用方法的详细攻略及示例代码,希望对你有帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP连接MYSQL数据库的3种常用方法 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • 详解MongoDB设置自动增长方法

    MongoDB简介 MongoDB是一种NoSQL数据库,提供了自动增长字段的功能,可以用于自动为文档生成唯一的id值。本攻略将介绍如何实现MongoDB自动增长功能。 MongoDB自动增长实现方法 MongoDB提供了自动生成唯一ID的方法——ObjectId。这个ID包含了时间戳、机器ID、进程ID以及随机数。它是一个长度为12个字节的二进制数,并且是…

    MongoDB 2023年3月14日
    00
  • 软件测试业务梳理的实用技巧

    软件测试业务梳理的实用技巧 在进行软件测试时,为了能够高效、顺序地进行测试工作,我们需要对测试业务进行梳理,以便更好地掌握测试工作的方向和进度。 以下是软件测试业务梳理的实用技巧,包括了三个步骤: 步骤一:梳理测试需求 1. 收集测试需求 在测试前,需要收集所有相关的测试需求,并将其分类整理。测试需求可来自于软件功能规格说明文档、用户需求、产品经理提供的说明…

    database 2023年5月22日
    00
  • SQL查询日志 查看数据库历史查询记录的方法

    以下是关于“SQL查询日志 查看数据库历史查询记录的方法”的完整攻略。 1. 概述 在数据库中查看历史查询记录的方法很多,其中一种比较常见的方法是查看SQL查询日志。SQL查询日志记录了所有执行过的SQL语句,包括执行的时间,查询的结果,以及其他相关的属性。通过查看SQL查询日志,可以快速了解数据库的查询情况,及时发现问题并进行优化。 2. 打开SQL查询日…

    database 2023年5月21日
    00
  • SQL Server 2000/2005/2008删除或压缩数据库日志的方法

    删除或压缩数据库日志是SQL Server维护操作中的一个重要环节,可以有效地释放磁盘空间和提高数据库性能。下面我们详细讲解SQL Server 2000/2005/2008删除或压缩数据库日志的方法。 1.检查当前数据库的日志占用情况 在进行日志删除或压缩之前,我们需要先检查当前数据库的日志占用情况,确认是否需要进行压缩或删除操作。可以使用以下命令查看日志…

    database 2023年5月19日
    00
  • SQL 使用Oracle的MODEL子句变换结果集

    SQL使用Oracle的MODEL子句变换结果集的完整攻略如下: 概述 Oracle的MODEL子句允许用户使用类似Excel风格的公式对关系型数据库中的数据进行处理和变换,包括数据透视表等功能。该子句的语法较为复杂,需要考虑多个参数和选项。下面将介绍MODEL子句的语法结构、参数选项、实例以及常见应用场景。 语法结构 MODEL子句的基本语法结构如下: S…

    database 2023年3月27日
    00
  • C#使用SQL DataReader访问数据的优点和实例

    C#使用SQL DataReader访问数据的优点和实例 在 C# 中,我们常常需要访问数据库中的数据。使用 SQL DataReader 可以有效地对数据进行访问,使得程序的性能得到提高。本文将详细讲解如何使用 SQL DataReader 访问数据的方法,同时介绍使用 SQL DataReader 访问数据的优点。 SQL DataReader 的优点 …

    database 2023年5月21日
    00
  • Redis中Scan命令的基本使用教程

    Redis中的Scan命令是非常常用的一个命令,它用于遍历Redis中的所有key,并且可以通过指定match参数来筛选出需要的key。下面是Redis中Scan命令的基本使用教程,包括命令语法、使用示例等。 Scan命令语法 Scan命令的语法如下: SCAN cursor [MATCH pattern] [COUNT count] 其中,参数说明如下: …

    database 2023年5月22日
    00
  • Linux中/var/spool/postfix/maildrop占空间很大的原因解析

    下面是关于“Linux中/var/spool/postfix/maildrop占空间很大的原因解析”的完整攻略。 问题现象描述 在 Linux 系统中,/var/spool/postfix/maildrop 的空间占用很大,而且邮件数量并不多,这是什么原因呢?本文将给出相关解析。 分析原因 /var/spool/postfix/maildrop 是 Post…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部