学习笔记12(PHP MySQL数据库系统)

发布时间 2023-11-30 16:58:19作者: 梁小轩

一、知识点梳理

(一)使用PHP连接到MySQL服务器

  1. 安装必要的软件:
    在基于Ubuntu的系统上,可以使用以下命令:

    sudo apt-get install php mysql-server php-mysql
    
  2. 启动MySQL服务:
    使用以下命令:

    sudo service mysql start
    
  3. 创建MySQL数据库和用户:
    登录MySQL并创建一个数据库以及一个可以连接到该数据库的用户。替换 <your_database><your_user> 为使用的数据库和用户名。

    mysql -u root -p
    
    CREATE DATABASE <your_database>;
    CREATE USER '<your_user>'@'localhost' IDENTIFIED BY '<your_password>';
    GRANT ALL PRIVILEGES ON <your_database>.* TO '<your_user>'@'localhost';
    FLUSH PRIVILEGES;
    
  4. 编写PHP代码连接到MySQL:
    创建一个PHP文件,例如 connect.php,并使用以下代码连接到MySQL数据库。 <your_database>, <your_user>, 和 <your_password> 为设置的数据库名、用户名和密码。

    <?php
    $servername = "localhost";
    $username = "<your_user>";
    $password = "<your_password>";
    $dbname = "<your_database>";
    
    // 创建连接
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    // 检测连接
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    echo "Connected successfully";
    $conn->close();
    ?>
    

    保存文件并在浏览器中打开该文件,如果一切设置正确,将会显示 "Connected successfully"。

(二)使用PHP创建数据库表

可以使用PHP执行 SQL 查询语句来创建数据库表。以下是一个简单的示例:

<?php
$servername = "localhost";
$username = "<your_user>";
$password = "<your_password>";
$dbname = "<your_database>";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检测连接
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// SQL 查询,创建表
$sql = "CREATE TABLE users (
    id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    firstname VARCHAR(30) NOT NULL,
    lastname VARCHAR(30) NOT NULL,
    email VARCHAR(50),
    reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)";

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

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

在这个例子中,我们使用 CREATE TABLE SQL 查询语句创建了一个名为 users 的表,该表包含 idfirstnamelastnameemailreg_date 列。你可以根据自己的需求修改表的结构。

确保替换 <your_user>, <your_password>, 和 <your_database> 为你的实际数据库用户名、密码和数据库名。保存文件并在浏览器中运行它,如果一切设置正确,将会显示 "Table 'users' created successfully"。

(三)使用PHP将记录插入表中

<?php
$servername = "localhost";
$username = "<your_user>";
$password = "<your_password>";
$dbname = "<your_database>";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检测连接
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 准备要插入的数据
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";

// SQL 查询,插入数据
$sql = "INSERT INTO users (firstname, lastname, email)
        VALUES ('$firstname', '$lastname', '$email')";

if ($conn->query($sql) === TRUE) {
    echo "New record inserted successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

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

在这个例子中,我们使用 INSERT INTO SQL 查询语句将一条记录插入到名为 users 的表中。我们指定了要插入的 firstnamelastnameemail 值。 <your_user>, <your_password>, 和 <your_database> 为实际数据库用户名、密码和数据库名。修改 $firstname$lastname$email 变量以插入想要的数据。保存文件并在浏览器中运行它,如果一切设置正确,将会显示 "New record inserted successfully"。

(四)使用PHP删除行

要使用PHP删除数据库表中的行,你可以使用 DELETE SQL 查询语句。以下是一个简单的示例:

<?php
$servername = "localhost";
$username = "<your_user>";
$password = "<your_password>";
$dbname = "<your_database>";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检测连接
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 准备要删除的数据条件
$id_to_delete = 1; // 你要删除的记录的id

// SQL 查询,删除数据
$sql = "DELETE FROM users WHERE id = $id_to_delete";

if ($conn->query($sql) === TRUE) {
    echo "Record deleted successfully";
} else {
    echo "Error deleting record: " . $conn->error;
}

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

在这个例子中,我们使用 DELETE FROM SQL 查询语句删除了 users 表中 id$id_to_delete 的记录。 <your_user>, <your_password>, 和 <your_database> 为实际数据库用户名、密码和数据库名。修改 $id_to_delete 变量以指定要删除的记录的id。保存文件并在浏览器中运行它,如果一切设置正确,将会显示 "Record deleted successfully"。

二、自主学习

(一)实战演练




(二)苏格拉底挑战