php与mysql(mysqli基本)

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。

php与mysql(mysqli基本)

上一篇:Mysql使用存储过程快速添加百万数据


下一篇:Mysql的分区表