PHP操作数据库(以MySQL为例)
一、开启扩展配置:
- 在php.ini的extension板块中增加一行extension=php_mysqli.dll

- 重启PHP,在phpinfo查看
<?php
echo phpinfo();
?>

二、通过mysqli_connect建立PHP与MySQL之间的联系

<?php
//建立与数据库与服务器之间的连接
//如果需要在调用函数时忽略错误或者警告可以在函数名之前加上@
$connection = mysqli_connect('localhost','root','0000','users');
if(!$connection){
exit('<h1>连接数据库失败</h1>');
}
print_r($connection);
?>

三、通过PHP代码执行数据操作
①数据查询的查询语句
<?php
//1.建立与数据库与服务器之间的连接
$connection = mysqli_connect('localhost','root','0000','users');
if(!$connection){
exit('<h1>连接数据库失败</h1>');
}
//2.基于刚刚建立的连接对象执行一次查询操作
$query=mysqli_query($connection,'select * from test;');
//得到的是一个查询对象,这个查询对象可以用来得到数据一行一行拿数据
//3.遍历结果集
//方法一:
// $row=mysqli_fetch_assoc($query);
// while($row){
// var_dump($row);
// $row=mysqli_fetch_assoc($query);
// }
// var_dump($row);
//方法二:(判断条件里可以写入赋值语句)
while($row=mysqli_fetch_assoc($query)){
var_dump($row);
}
//4.释放查询结果集
mysqli_free_result($query);
//5.关闭连接
mysqli_close($connection);
?>

②增删改数据的查询语句
<?php
//1.建立与数据库与服务器之间的连接
$connection = mysqli_connect('localhost','root','0000','users');
if(!$connection){
exit('<h1>连接数据库失败</h1>');
}
//2.基于刚刚建立的连接对象执行一次查询操作
$query=mysqli_query($connection,'delete from test where id=3;');
if(!$query){
exit('<h1>查询失败</h1>');
}
//3.拿到受影响行:传入的一定是连接对象
$rows=mysqli_affected_rows($connection);
var_dump($rows);//int(1)
//4.释放查询结果
mysqli_free_result($query);
//5.关闭连接
mysqli_close($connection);
?>
四、PHP中查询中文数据的编码问题
<?php
$connection = mysqli_connect('localhost','root','0000','users');
//设置:必须在查询之前,必须传入连接对象和编码
mysqli_set_charset($connection,'utf8');
if(!$connection){
exit('<h1>连接数据库失败</h1>');
}
?>
PHP操作数据库(以MySQL为例)的更多相关文章
- Python操作数据库之 MySQL
Python操作数据库之MySQL 一.安装Python-MySQLdb模块 Python-MySQLdb是一个操作数据库的模块,Python 通过它对 mysql 数据实现各种操作. 如果要源码安装 ...
- go操作数据库 Go-SQL-Driver/MySQL 使用详解
go操作mysql的驱动包很多,这里讲解当下比较流行的Go-SQL-Driver/MySQL1.下载安装 执行下面两个命令: 下载:go get github.com/Go-SQL-Driver/My ...
- MySQL操作数据库--与MySQL零距离接触1-7
第一章 1-7操作数据库 数据库是一个集合:表 索引等. MySQL语句规范: 关键字与函数名称全部大写 数据库名称.表名称.字段名称全部小写 SQL语句必须以分号结尾 语法结构: {}: ...
- python操作数据库(Mysql)
原文地址:https://www.cnblogs.com/R-bear/p/7022231.html python DB-API介绍 1.python标准数据库接口为 python DB-API,py ...
- 应用开发实践之关系型数据库(以MySql为例)小结
本文主要是对目前工作中使用到的DB相关知识点的总结,应用开发了解到以下深度基本足以应对日常需求,再深入下去更偏向于DB本身的理论.调优和运维实践. 不在本文重点关注讨论的内容(可能会提到一些): 具体 ...
- Python教程:操作数据库,MySql的安装详解
各位志同道合的同仁请点击上方关注 本教程是基于Python语言的深入学习.本次主要介绍MySql数据库软件的安装.不限制语言语法,对MySql数据库安装有疑惑的各位同仁都可以查看一下. 如想查看学习P ...
- thinkphp中的内置操作数据库与mysql中的函数汇总
8.4.4 Model类getModelName() 获取当前Model的名称getTableName() 获取当前Model的数据表名称switchModel(type,vars=array()) ...
- MySQL操作数据库值mysql事务
创建一个无参数的事务 注意要写START TRANSACTION或者是Begin;Mysql会默认直接执行一个单元 MYSQL默认是自动提交的,也就是你提交一个QUERY,它就直接执行!我们可 ...
- 数据库 之MySQL 简单教程
So Easy系列之MySQL数据库教程 1. 数据库概述 1.1. 数据库概述 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和 ...
- JDBC连接MySQL数据库及演示样例
JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...
随机推荐
- json转义问题
后端程序接受前台传递过来json 1正常json没有问题 比如 {"id":21,"userName":"2张天师","phon ...
- array_merge_recursive 的使用
作用:递归合并数组 场景:在平时开发中,我们可能遇到获取的数据是多个维度的数据,而我们只需要其中的一个. 代码如下: $project_id = 'project_id'; $arr1 = [ 'pr ...
- quartz2.3.0(九)job任务监听器,监听任务执行前、后、取消手动处理方法
job1任务类 package org.quartz.examples.example9; import java.util.Date; import org.quartz.Job; import o ...
- Springboot 整合ApachShiro完成登录验证和权限管理
1.前言 做一个系统最大的问题就是安全问题以及权限的问题,如何正确的选择一个安全框架对自己的系统进行保护,这方面常用的框架有SpringSecurity,但考虑到它的庞大和复杂,大多数公司还是会选择 ...
- docker容器日志管理(清理)
原文:docker容器日志管理(清理) 前言 在使用docker容器时候,其日志的管理是我们不得不考虑的事情.因为docker容器的日志文件会占据大量的磁盘空间.下面介绍的就是对docker容器日志的 ...
- nginx-rtmp之直播视频流的推送
一.RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写.该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变 ...
- IdentityServer4实现Oauth2.0四种模式之隐藏模式
接上一篇:IdentityServer4实现OAuth2.0四种模式之密码模式,密码模式将用户的密码暴露给了客户端,这无疑是不安全的,隐藏模式可以解决这个问题,由用户自己在IdentityServ ...
- 使用CertUtil.exe下载远程文件
使用CertUtil.exe下载远程文件 证书 https://www.cnblogs.com/17bdw/p/8728656.html 1.前言 经过国外文章信息,CertUtil.exe下载恶意软 ...
- python day 11: 类的补充,元类,魔法方法,异常处理
目录 python day 11 1. 类的补充 1.1 通过反射来查找类,创建对象,设置对象的属性与方法 1.2 类的魔法方法:getitem,setitem 1.3 元类__metaclass__ ...
- Jenkins多环境持续集成架构实践
自动化部署主要是为了解决项目多.环境多.持续集成慢.部署操作麻烦.手动操作易出错.自动化运维等问题. Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建.部署.自动化 ...