PHP走进 PHP 第六课 MySQL

Posted 我是小白呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP走进 PHP 第六课 MySQL相关的知识,希望对你有一定的参考价值。

概述

从今天开始, 小白我将带领大家一起来学习一下 PHP 的基础知识.

MySQL

MySQL 是一个关系型数据库管理系统, 关联的数据库将数据存放在不同的表中, 而不是将所有的数据放在一个大仓库内, 大大增加速度并提高灵活性.

MySQL 安装

下载地址:

https://dev.mysql.com/downloads/windows/installer/

Navicat 安装

Navicat 是一个非常强大的数据库管理工具.

安装地址:

https://www.navicat.com.cn/download/navicat-premium

创建新的数据库

新建 MySQL 数据库:

新建表:

连接数据库

<?php

# 服务器名字
$servername = "localhost:3306";

# 用户名
$username = "root";

# 密码
$password = "admin";

# 连接数据库
$conn = mysqli_connect($servername, $username, $password);

# 调试输出, 连接成功返回
var_dump($conn);

# 如果存在连接错误, 退出
if (mysqli_connect_errno()) 

    # 输出错误
    echo mysqli_connect_error();

    # 退出
    exit();


# 调试输出
echo "数据库连接成功!";

# 关闭数据库
mysqli_close($conn);

?>

输出结果:

object(mysqli)#1 (18) 
  ["affected_rows"]=>
  int(0)
  ["client_info"]=>
  string(13) "mysqlnd 8.1.1"
  ["client_version"]=>
  int(80101)
  ["connect_errno"]=>
  int(0)
  ["connect_error"]=>
  NULL
  ["errno"]=>
  int(0)
  ["error"]=>
  string(0) ""
  ["error_list"]=>
  array(0) 
  
  ["field_count"]=>
  int(0)
  ["host_info"]=>
  string(25) "localhost:3306 via TCP/IP"
  ["info"]=>
  NULL
  ["insert_id"]=>
  int(0)
  ["server_info"]=>
  string(6) "8.0.27"
  ["server_version"]=>
  int(80027)
  ["sqlstate"]=>
  string(5) "00000"
  ["protocol_version"]=>
  int(10)
  ["thread_id"]=>
  int(23)
  ["warning_count"]=>
  int(0)

数据库连接成功!

注意:

  • 连接成功: 连接成功返回对象
  • 连接失败: 返回 false

SQL 语句

SQL 语句作用
INSERT INTO 表名 (列名1, 列名2, …) VALUES (值1, 值2, …)向表中插入新记录
SELECT 列名 FROM 表名从数据库中选取数据
UPDATE 表名 SET 列名1 = 值1, 列名2 = 值2 WHERE 列名 = 值更新表中的记录
DELETE FROM 表名 WHERE 列名 = 值从表中删除行

添加数据

<?php

# 服务器名字
$servername = "localhost:3306";

# 用户名
$username = "root";

# 密码
$password = "admin";

# 数据库
$database = "test01";

# 连接数据库
$conn = mysqli_connect($servername, $username, $password, $database);

# 调试输出, 连接成功返回
var_dump($conn);

# 如果存在连接错误, 退出
if (mysqli_connect_errno()) 

    # 输出错误
    echo mysqli_connect_error();

    # 退出
    exit();


# 调试输出
echo "数据库连接成功!\\n";

# 执行sql语句
$sql = "insert into table1 (id, name) values (1, '我是小白呀')";
$result = mysqli_query($conn, $sql);

# 增删改查
if ($result) 
    echo "SQL 语句执行成功";
else 
    echo "SQL 语句执行失败";


# 关闭数据库
mysqli_close($conn);

?>

输出结果:

object(mysqli)#1 (18) 
  ["affected_rows"]=>
  int(0)
  ["client_info"]=>
  string(13) "mysqlnd 8.1.1"
  ["client_version"]=>
  int(80101)
  ["connect_errno"]=>
  int(0)
  ["connect_error"]=>
  NULL
  ["errno"]=>
  int(0)
  ["error"]=>
  string(0) ""
  ["error_list"]=>
  array(0) 
  
  ["field_count"]=>
  int(0)
  ["host_info"]=>
  string(25) "localhost:3306 via TCP/IP"
  ["info"]=>
  NULL
  ["insert_id"]=>
  int(0)
  ["server_info"]=>
  string(6) "8.0.27"
  ["server_version"]=>
  int(80027)
  ["sqlstate"]=>
  string(5) "00000"
  ["protocol_version"]=>
  int(10)
  ["thread_id"]=>
  int(41)
  ["warning_count"]=>
  int(0)

数据库连接成功!
SQL 语句执行成功

查询数据

<?php

# 服务器名字
$servername = "localhost:3306";

# 用户名
$username = "root";

# 密码
$password = "admin";

# 数据库
$database = "test01";

# 连接数据库
$conn = mysqli_connect($servername, $username, $password, $database);

# 调试输出, 连接成功返回
var_dump($conn);

# 如果存在连接错误, 退出
if (! $conn) 

    # 输出错误
    echo mysqli_connect_error();

    # 退出
    exit();


# 调试输出
echo "数据库连接成功!\\n";

# sql语句
$sql = "select".
       "    id, name".
       " from".
       "    table1";

# 执行SQL语句
$result = mysqli_query($conn, $sql);

# 是否执行成功
if(!$result) 
    echo mysqli_error($conn);


# 循环输出
do 
    # 按行输出
    $line = mysqli_fetch_assoc($result);
    print_r($line);
 while ($line);

# 关闭数据库
mysqli_close($conn);

?>

输出结果:

object(mysqli)#1 (18) 
  ["affected_rows"]=>
  int(0)
  ["client_info"]=>
  string(13) "mysqlnd 8.1.1"
  ["client_version"]=>
  int(80101)
  ["connect_errno"]=>
  int(0)
  ["connect_error"]=>
  NULL
  ["errno"]=>
  int(0)
  ["error"]=>
  string(0) ""
  ["error_list"]=>
  array(0) 
  
  ["field_count"]=>
  int(0)
  ["host_info"]=>
  string(25) "localhost:3306 via TCP/IP"
  ["info"]=>
  NULL
  ["insert_id"]=>
  int(0)
  ["server_info"]=>
  string(6) "8.0.27"
  ["server_version"]=>
  int(80027)
  ["sqlstate"]=>
  string(5) "00000"
  ["protocol_version"]=>
  int(10)
  ["thread_id"]=>
  int(61)
  ["warning_count"]=>
  int(0)

数据库连接成功!
Array
(
    [id] => 1
    [name] => 我是小白呀
)
Array
(
    [id] => 2
    [name] => 我是大白呀
)
Array
(
    [id] => 3
    [name] => 我是大大白呀
)

以上是关于PHP走进 PHP 第六课 MySQL的主要内容,如果未能解决你的问题,请参考以下文章

PHP & MySQL数据库专题 第六课 MySQL 内置函数

PHP & MySQL数据库专题 第六课 MySQL 内置函数

Golang✔️走进 Go 语言✔️ 第六课 循环语句

Golang✔️走进 Go 语言✔️ 第六课 循环语句

Golang✔️走进 Go 语言✔️ 第六课 条件表达式

第六课:Prometheus