【php快速上手(十一)】

目录

PHP快速上手(十一)

PHP 连接数据库和创建数据库

在 PHP 中,你可以使用 MySQLi(MySQL Improved)或 PDO(PHP Data Objects)来连接 MySQL 数据库并执行查询。这两种方法都提供了与 MySQL 数据库进行交互的功能,包括连接数据库、执行查询、处理结果集等。

PHP 连接数据库

使用 MySQLi连接 MySQL 数据库

MySQLi是 PHP 提供的 MySQL Improved 扩展,提供了与 MySQL 数据库进行交互的功能。它提供了面向对象和面向过程两种编程风格。

1 面向对象风格

php 复制代码
<?php
// 创建连接
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";

// 关闭连接
$conn->close();
?>

在上面的代码中:

  • 创建与数据库的连接,并指定服务器地址、用户名、密码和数据库名。
  • 使用 connect_error 检查连接是否成功。
  • 执行查询并获取结果集。
  • 通过循环遍历结果集并输出。
  • 关闭连接以释放资源。

2 面向过程风格

php 复制代码
<?php
// 创建连接
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接是否成功
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";

// 关闭连接
mysqli_close($conn);
?>

在上面的代码中,使用面向过程的风格创建连接、执行查询、处理结果集和关闭连接。

使用 PDO 连接 MySQL 数据库

PDO 是 PHP 提供的数据库抽象层,可以用于连接和操作多种数据库,包括 MySQL。它提供了更高级的功能,如预处理语句、事务管理等。

php 复制代码
<?php
// 创建连接
$dsn = "mysql:host=localhost;dbname=test";
$username = "root";
$password = "";

try {
    $conn = new PDO($dsn, $username, $password);
    // 设置错误模式为异常模式
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully";
} catch (PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}

// 关闭连接
$conn = null;
?>

在上面的代码中:

  • 使用数据源名称(DSN)指定连接信息,包括数据库类型、服务器地址和数据库名。
  • 创建 PDO 对象并设置错误模式为异常模式。
  • 执行查询并获取结果集。
  • 通过循环遍历结果集并输出。
  • 将连接设置为 null 来关闭连接。

PHP创建数据库

使用MySQLi和PDO是PHP中常用的两种扩展来连接和操作MySQL数据库。下面分别介绍如何使用MySQLi和PDO来创建MySQL数据库。

使用MySQLi创建MySQL数据库:
php 复制代码
<?php
// 连接数据库
$servername = "localhost";
$username = "root";
$password = "";
$conn = new mysqli($servername, $username, $password);

// 检查连接是否成功
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 创建数据库
$sql = "CREATE DATABASE myDB";

if ($conn->query($sql) === TRUE) {
    echo "Database created successfully";
} else {
    echo "Error creating database: " . $conn->error;
}

// 关闭连接
$conn->close();
?>
使用PDO创建MySQL数据库:
php 复制代码
<?php
// 连接数据库
$servername = "localhost";
$username = "root";
$password = "";

try {
    $conn = new PDO("mysql:host=$servername", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // 创建数据库
    $sql = "CREATE DATABASE myDB";
    $conn->exec($sql);

    echo "Database created successfully";
} catch(PDOException $e) {
    echo "Error creating database: " . $e->getMessage();
}

// 关闭连接
$conn = null;
?>

在上面的示例中,使用MySQLi和PDO创建MySQL数据库的过程基本相似,都是先建立与数据库服务器的连接,然后执行CREATE DATABASE语句来创建数据库。需要注意的是,使用PDO时需要捕获可能发生的异常,以确保代码的健壮性。

相关推荐
CodeCraft Studio4 小时前
PDF处理控件Aspose.PDF教程:使用 Python 将 PDF 转换为 Base64
开发语言·python·pdf·base64·aspose·aspose.pdf
零点零一4 小时前
VS+QT的编程开发工作:关于QT VS tools的使用 qt的官方帮助
开发语言·qt
lingchen19067 小时前
MATLAB的数值计算(三)曲线拟合与插值
开发语言·matlab
爱隐身的官人7 小时前
cfshow-web入门-php特性
python·php·ctf
gb42152877 小时前
java中将租户ID包装为JSQLParser的StringValue表达式对象,JSQLParser指的是?
java·开发语言·python
一朵梨花压海棠go7 小时前
html+js实现表格本地筛选
开发语言·javascript·html·ecmascript
蒋星熠7 小时前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
翻滚丷大头鱼8 小时前
Java 集合Collection—List
java·开发语言
aramae8 小时前
C++ -- 模板
开发语言·c++·笔记·其他
胡耀超8 小时前
4、Python面向对象编程与模块化设计
开发语言·python·ai·大模型·conda·anaconda