📅  最后修改于: 2023-12-03 15:18:20.504000             🧑  作者: Mango
在 PHP 中,mysqli
是一个针对 MySQL 数据库的扩展,用于连接和操作 MySQL 数据库。主键是定义在表中的一列或一组列,它的值在表中是唯一的,用于识别和唯一标识表中的每一行。
在 mysqli
中,可以通过执行 SQL 查询和操作来创建和管理主键。
可以在创建表时定义主键,以下是一个创建包含主键的示例表的 SQL 查询:
CREATE TABLE users (
id INT PRIMARY KEY,
name VARCHAR(50),
email VARCHAR(100)
);
上述查询中,id
列被定义为主键。
通常情况下,主键的值是由数据库系统管理和维护的。可以通过设置 AUTO_INCREMENT
来让主键自动增长:
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
email VARCHAR(100)
);
注意在上述查询中,id
列的类型被定义为 INT
,并设置了 AUTO_INCREMENT
。
使用 INSERT INTO
语句来向表中插入数据,插入数据时可以忽略自动增长的主键列,数据库会自动生成合适的值。
<?php
$mysqli = new mysqli("localhost", "username", "password", "dbname");
if ($mysqli->connect_error) {
die("连接失败:" . $mysqli->connect_error);
}
$name = "John";
$email = "john@example.com";
$sql = "INSERT INTO users (name, email) VALUES ('$name', '$email')";
if ($mysqli->query($sql) === TRUE) {
echo "数据插入成功";
} else {
echo "数据插入失败:" . $mysqli->error;
}
$mysqli->close();
?>
在上述示例中,使用了 INSERT INTO
语句将数据插入到名为 users
的表中。
使用 SELECT
语句来从表中查询数据,以下是一个查询具有特定主键值的数据的示例:
<?php
$mysqli = new mysqli("localhost", "username", "password", "dbname");
if ($mysqli->connect_error) {
die("连接失败:" . $mysqli->connect_error);
}
$id = 1;
$sql = "SELECT * FROM users WHERE id = $id";
$result = $mysqli->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . ", Name: " . $row["name"] . ", Email: " . $row["email"] . "<br>";
}
} else {
echo "没有找到数据";
}
$mysqli->close();
?>
上述示例中,使用了 SELECT
语句查询 users
表中 id
列等于 1 的数据。
使用 UPDATE
语句来更新表中的数据,以下是一个更新具有特定主键值的数据的示例:
<?php
$mysqli = new mysqli("localhost", "username", "password", "dbname");
if ($mysqli->connect_error) {
die("连接失败:" . $mysqli->connect_error);
}
$id = 1;
$newEmail = "newemail@example.com";
$sql = "UPDATE users SET email = '$newEmail' WHERE id = $id";
if ($mysqli->query($sql) === TRUE) {
echo "数据更新成功";
} else {
echo "数据更新失败:" . $mysqli->error;
}
$mysqli->close();
?>
上述示例中,使用了 UPDATE
语句更新 users
表中 id
列等于 1 的数据的 email
值。
使用 DELETE
语句来从表中删除数据,以下是一个删除具有特定主键值的数据的示例:
<?php
$mysqli = new mysqli("localhost", "username", "password", "dbname");
if ($mysqli->connect_error) {
die("连接失败:" . $mysqli->connect_error);
}
$id = 1;
$sql = "DELETE FROM users WHERE id = $id";
if ($mysqli->query($sql) === TRUE) {
echo "数据删除成功";
} else {
echo "数据删除失败:" . $mysqli->error;
}
$mysqli->close();
?>
上述示例中,使用了 DELETE
语句删除 users
表中 id
列等于 1 的数据。
以上是关于 PHP mysqli 主键的介绍和示例。主键在数据库中起着重要的作用,用于确保数据的完整性和准确性。使用 mysqli
扩展可以方便地操作和管理主键。