php操作数据库

一.

PHP来操作数据库

    SQL语句是操作数据库的计算机语言

    不管是什么方式,本质上,都是在执行SQL语句,只是执行方式不同

    普通的执行方式,通过cmd命令行,才执行SQL语句,执行结果,只存在于cmd命令行中
        前端页面,后端程序php,java 等无法使用其中的数据的

    MySQL-front 可视化软件,本质也是在执行SQL语句
        操作结果,也是只存在于可视化软件中,其他程序也是无法使用

    PHP的本质也是在PHP程序中,运行SQL语句,来操作数据库
        PHP提供了专门的方法,来对MySQL数据库进行操作
        并且获取操作结果,PHP程序中

        方法有3种方法
            mysql 函数库 弃用
            mysqli函数库 
            PDO函数库  必须7.0以上版本才可以 

PHP中通过PHP提供的函数库,来运行指定的函数方法,来才做MySQL数据库

php_mysqli 函数库,操作MySQL书库的语法和步骤,基本固定的形式

通过mysqli函数库方法,来操作MySQL数据库固定步骤
    1,链接,登录
    $link = mysqli_connect(地址,账号,密码,库名,端口);

    2,定义要执行的SQL语句
    $sql = "SQL语句";

    3,执行SQL语句
    $result = mysqli_query($link,$sql);

    4,获取执行结果
    $arr = mysqli_fetch_all($result , MYSQLI_ASSOC);

    5,关闭数据库
    mysqli_close($link);

1,链接登录MySQL数据库
mysqli_connect() 连接登录数据库的方法

    参数1:MySQL数据库的地址
        当前使用的是本地数据库
        'localhost' 或者 '127.0.0.1'

    参数2:登录MySQL的账号
        'root'

    参数3:登录MySQL的密码
        'root'

    参数4:使用数据库的名称
        'nz2002'

    参数5:MySQL数据库的端口号
        3306

    $link = mysqli_connect('localhost','root','root','nz2002',3306);

2,定义SQL语句
    将我们要执行的SQL语句,定义成字符串的形式
    最外一定要使用 " " 双引号包裹,为了解析变量
    双引号之内,只能使用单引号
    SQL语句,可以没有分号结尾
    主要注意编码格式

    $sql = "SQL语句";

3,执行SQL语句
    执行结果是 结果集对象
    对象中有执行结果,但是无法直接使用

    $result = mysqli_query($link , $sql);

4,获取SQL语句执行结果
    从结果集对象中,抽取具体的数据内容,组成新的数组,二维数组
    mysqli_fetch_all($result , MYSQLI_ASSOC)

    $arr = mysqli_fetch_all($result , MYSQLI_ASSOC);

5,关闭mysql数据库
    链接的那个数据库,就关闭那个数据库
    mysqli_close($link);

6,如果需要,要在执行SQL语句之前,设定编码格式

    mysqli_query($link , "SET NAMES uft8或者gbk");

    会影响中文的显示和查询

7,mysqli_query($link ,  $sql);

    如果 mysqli_query 执行的是 查询语句,执行结果是结果集对象

    如果 mysqli_query 执行的是 非查询语句,执行结果是 布尔类型   true成功   false失败
        如果执行结果是布尔类型,不能使用 mysqli_fetch_all 来获取数组
        只有查询语句,可以使用 mysqli_fetch_all 来获取数组

在这里插入图片描述

二.

<?php

// PHP操作MySQL数据库的方法和步骤

// 1,登录MySQL数据库
// 如果连接成功,返回一个对象,其中存储很多的连接信息
// 如果连接失败,程序执行报错

// 参数1:连接MySQL数据库地址
//       当前是本地数据库 'localhost' 或者 '127.0.0.1'
// 参数2:连接MySQL数据库账号
//       'root'
// 参数3:连接MySQL数据库密码
//       'root'
// 参数4:连接MySQL数据库,指定使用的库
//       'nz2002'
// 参数5:连接MySQL数据库端口
//       3306

// 实际项目中,会给定,MySQL的地址,账号,密码,库名,端口
// 给你什么,你就输入什么就可以了
// 参数内容是项目中给定的,参数的顺序,不能变

$link = mysqli_connect('localhost','root','root','nz2002',3306);

echo '<pre>';
print_r($link);
echo '</pre>';


// 2,设定需要执行的SQL语句

// SQL语句,要根据实际项目需求而定
// 目前查询所有姓何的人员名单
// 问题:
// 1,定义的SQL语句,实际上就是你需要执行的SQL语句程序,以字符串的形式来定义
// 2,定义SQL语句,最外层,要使用双引号,为了如果有变量,可以解析变量
// 3,双引号之内,只能使用单引号
// 4,定义的SQL语句中,可以没有分号结束
//   因为此时并不是真的执行SQL语句,只是来定义
// 5,变量一定要会用{}包裹,防止发生冲突
// 6,要确保编码格式正常,这样才能正常的查询设定中文

$str = 'name';

// 查询结果,mysqli_query()执行结果是结果集对象
$sql1 = "SELECT * FROM `student` WHERE `{$str}` LIKE '何%'";

// 给student表结构中,age字段的 所有数据,都+1
$sql2 = "UPDATE `student` SET `age` = `age`+1";

// 2.5,设定SQL语句的编码格式
// 只要数据库格式设定正确,一般都可以保证编码格式是utf8
// 为了保险起见,或者查询结果中,中文显示是乱码
// 可以指定编码格式是utf8

mysqli_query($link,"SET NAMES utf8");


// 3,执行SQL语句
// mysqli_query() 执行SQL语句的方法
// 参数1:链接MySQL数据集的执行结果对象
//       要使用连接成功后,对象中的相关信息
// 参数2:定义的SQL语句

// 查询结果是一个对象形式

// 如果编码格式设定有问题,执行结果,就会有问题,执行就会报错
$result = mysqli_query($link,$sql2);

var_dump($result);

echo '<pre>';
print_r($result);
echo '</pre>';


// 获取具体的执行结果
// 从结果集对象中,抽取具体的数据内容
// 组成新的数组形式存储
// 参数1:执行SQL语句的结果集对象
// 参数2:设定数组的索引下标的形式
//       MYSQLI_ASSOC 数组索引下标,是字段名称
//       数组形式与数据库内容形式相互对应

$arr = mysqli_fetch_all($result,MYSQLI_ASSOC);

// echo '<pre>';
// print_r($arr);
// echo '</pre>';

// 操作结束,关闭数据库
// 参数:链接数据库结果
mysqli_close($link);


在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值