php与mysql(mysqli基本)
创建数据库
<?php
$servername = "localhost";//ip地址
$username = "username";//用户名
$password = "password";//密码
// 创建连接
$conn = mysqli_connect($servername, $username, $password);//连接数据库
// 检测连接
if (!$conn) {
die("连接失败: " . mysqli_connect_error());//退出并输出字符串
}
// 创建数据库
$sql = "CREATE DATABASE myDB";
if (mysqli_query($conn, $sql))//在conn链接的用户里创建数据库
{
echo "数据库创建成功";
}
else {
echo "Error creating database: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
函数
mysqli_connect():
? 打开一个到 MySQL 服务器的新的连接.
? mysqli_connect(host,username,password,dbname,port,socket);
参数 | 描述 |
---|---|
host | 可选。规定主机名或 IP 地址。 |
username | 可选。规定 MySQL 用户名。 |
password | 可选。规定 MySQL 密码。 |
dbname | 可选。规定默认使用的数据库。 |
port | 可选。规定尝试连接到 MySQL 服务器的端口号。 |
socket | 可选。规定 socket 或要使用的已命名 pipe |
返回值: | 返回一个代表到 MySQL 服务器的连接的对象。 |
---|
mysqli_query()
mysqli_query() 函数执行某个针对数据库的查询。也可以执行语句。
mysqli_query(connection,query,resultmode);
参数 | 描述 |
---|---|
connection | 必需。规定要使用的 MySQL 连接。 |
query | 必需,规定查询字符串。 |
resultmode | 可选。一个常量。可以是下列值中的任意一个:MYSQLI_USE_RESULT(如果需要检索大量数据,请使用这个)MYSQLI_STORE_RESULT(默认) |
返回值: | 针对成功的 SELECT、SHOW、DESCRIBE 或 EXPLAIN 查询,将返回一个 mysqli_result 对象。针对其他成功的查询,将返回 TRUE。如果失败,则返回 FALSE。 |
---|
创建数据表
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);
// 检测连接
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
// 使用 sql 创建数据表
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";
if (mysqli_query($conn, $sql)) {
echo "数据表 MyGuests 创建成功";
} else {
echo "创建数据表错误: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
函数
mysqli_query()
插入多条数据
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建链接
$conn = mysqli_connect($servername, $username, $password, $dbname);
// 检查链接
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES (‘John‘, ‘Doe‘, ‘john@example.com‘);";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES (‘Mary‘, ‘Moe‘, ‘mary@example.com‘);";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES (‘Julie‘, ‘Dooley‘, ‘julie@example.com‘)";
if (mysqli_multi_query($conn, $sql)) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>
函数
mysqli_multi_query()
函数执行一个或多个针对数据库的查询。多个查询用分号进行分隔。
mysqli_multi_query(connection,query);
参数 | 描述 |
---|---|
connection | 必需。规定要使用的 MySQL 连接。 |
query | 必需。规定一个或多个查询,用分号进行分隔。 |
返回值: | 如果第一个查询失败则返回 FALSE。 |
---|---|
读取数据
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// 输出数据
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 结果";
}
mysqli_close($conn);
?>
函数
mysqli_num_rows()
函数返回结果集中行的数量。
mysqli_num_rows(result);
参数 | 描述 |
---|---|
result | 必需。规定由 mysqli_query()、mysqli_store_result() 或 mysqli_use_result() 返回的结果集标识符。 |
返回值: | 返回结果集中行的数量。 |
---|---|
mysqli_fetch_assoc()
函数从结果集中取得一行作为关联数组。
注释:该函数返回的字段名是区分大小写的。
mysqli_fetch_assoc(result);
参数 | 描述 |
---|---|
result | 必需。规定由 mysqli_query()、mysqli_store_result() 或 mysqli_use_result() 返回的结果集标识符。 |
返回值: | 返回代表读取行的关联数组。如果结果集中没有更多的行则返回 NULL。 |
---|---|