php数据库访问及增删改
利用PHP访问由MySQL构建的数据库
连接到数据库
//1.造连接对象
$db = new MySQLi("localhost","root","123","text"); //2.判断连接是否出错
if(mysqli_connect_error())
{
die("连接失败!");
}
准备SQL语句
$sql = "select * from info";
执行SQL语句,返回结果集对象
$result = $db->query($sql); //执行查询语句
从结果集里面取数据
$attr = $result->fetch_all(); //返回所有数据,并且以二维数组的方式存在
//三个可选参数:MYSQLI_ASSOC返回关联数组,MYSQLI_NUM返回索引数组,MYSQLI_BOTH返回索引和关联都有的,使用的时候不需要加双引号
var_dump($attr); //输出结果
结果返回的是一个二维数组:

其他取数据语句:
//$attr = $result->fetch_array();//返回当前这条数据,返回的是一维数组,默认是索引关联都有
//$attr = $result->fetch_assoc(); //返回当前这条数据,返回的是一维关联数组
//$attr = $result->fetch_object(); //返回当前这条数据的对象
//$attr = $result->fetch_row(); //返回当前这条数据,返回的是索引数组
在页面中输出结果:
$attr = $result->fetch_all(); foreach($attr as $v)
{
echo "<div>{$v[0]}--{$v[1]}--{$v[2]}--{$v[3]}--{$v[4]}</div>";
}

使用while语句:
//1.造连接对象
$db = new MySQLi("localhost","root","","12345"); //2.判断连接是否出错
if(mysqli_connect_error())
{
die("连接失败!");
}
$sql = "select * from info";
$result = $db->query($sql);
while($attr = $result->fetch_row())
{
echo "<div>{$attr[0]}--{$attr[1]}--{$attr[2]}--{$attr[3]}--{$attr[4]}</div>";
}
使用for循环:
$de = new mysqli("localhost","root","","12345");
$e="select * from info";
$result = $de->query($e);
$atter = $result->fetch_all();
for($i=0;$i<count($atter);$i++)
{
for($j=0;$j<count($atter[$i]);$j++)
{
if($j==4)
{
echo $atter[$i][$j]."<br>";
}
else
{
echo $atter[$i][$j]."--";
}
}
}
//1.造连接对象
$db = new MySQLi("localhost","root","","12345"); //2.判断连接是否出错
if(mysqli_connect_error())
{
die("连接失败!");
}
$sql = "select * from info";
$result = $db->query($sql);
for(;$attr = $result->fetch_row();)
{
echo "<div>{$attr[0]}--{$attr[1]}--{$attr[2]}--{$attr[3]}--{$attr[4]}</div>";
}
结果与上相同。
数据的增删改:
//1.造连接对象
$db = new MySQLi("localhost","root","123","text"); //2.准备一条SQL语句
$sql = "insert into nation values('n099','民族')"; //3.执行SQL语句
$result = $db->query($sql); //执行成功返回true,执行失败返回false
执行后数据在MySQL中已写入,再执行会返回false。
php数据库访问及增删改的更多相关文章
- Android(java)学习笔记245:ContentProvider使用(银行数据库创建和增删改查的案例)
1. Android的四大组件: (1)Activity 用户交互的UI界面 (2)Service 后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...
- Flutter数据库Sqflite之增删改查
Flutter数据库Sqflite之增删改查 简介 sqflite是Flutter的SQLite插件,支持iOS和Android,目前官方版本是sqflite1.1.3 sqflite插件地址:h ...
- Android(java)学习笔记189:ContentProvider使用(银行数据库创建和增删改查的案例)
1. Android的四大组件: (1)Activity 用户交互的UI界面 (2)Service 后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...
- Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)
day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库: 简称:DataBase ---->DB 数据库即存放数据的仓库, ...
- ORM 实现数据库表的增删改查
这次通过反射技术来实现一下数据库表的增删改查对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping) 注:引用时约束了以下几点: 数据 ...
- Vc数据库编程基础MySql数据库的表增删改查数据
Vc数据库编程基础MySql数据库的表增删改查数据 一丶表操作命令 1.查看表中所有数据 select * from 表名 2.为表中所有的字段添加数据 insert into 表名( 字段1,字段2 ...
- 第16课-数据库开发及ado.net-数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍
第16课-数据库开发及ado.net 数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍 SQL语句入门(脚本.命令) SQL全名是结构化查询语言(Structur ...
- 十四:SpringBoot-配置MongoDB数据库,实现增删改查逻辑
SpringBoot-配置MongoDB数据库,实现增删改查逻辑 1.MongoDB数据库 1.1 MongoDB简介 1.2 MongoDB特点 2.SpringBoot整合MongoDB 2.1 ...
- .net 连接SqlServer数据库及基本增删改查
一.写在前面 因为这学期选修的 .net 课程就要上机考试了,所以总结下.net 操作 SqlServer 数据的方法.(因为本人方向是 Java,所以对.net 的了解不多,但以下所写代码均是经过测 ...
随机推荐
- 学习AOP之透过Spring的Ioc理解Advisor
花了几天时间来学习Spring,突然明白一个问题,就是看书不能让人理解Spring,一方面要结合使用场景,另一方面要阅读源代码,这种方式理解起来事半功倍.那看书有什么用呢?主要还是扩展视野,毕竟书是别 ...
- 通过三次优化,我将gif加载优化了16.9%
WeTest 导读 现在app越来越炫,动不动就搞点动画,复杂的动画用原生实现起来挺复杂,如是就搞起gif播放动画的形式,节省开发成本. 背 景 设计同学准备给一个png序列,开发读取png序列, ...
- PHP中遍历XML之SimpleXML
简单来讲述一些XML吧,XML是可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言.XML是当今用于传输数据的两大工具之一,另外一个是json. 我们在PHP中使用XML也是用来传输数据, ...
- PHP之GD函数的使用
本文讲解常用GD函数的应用 1.一个简单的图像 我们先看一个例子: <?php $w = 200; $h = 200; $img = imagecreatetruecolor($w,$h); $ ...
- js从数组中随机取出不同的元素
前言 上午处理个需求需要从一个总数组中随机取出不同的元素.共使用两个方法.第一种方法较常规,经测试有bug,数据量大以后随机几次返回的对象直接是function而不是object. 当然简单数据类型应 ...
- ASP.NET Core 中文文档目录
翻译计划 五月中旬 .NET Core RC2 如期发布,我们遂决定翻译 ASP.NET Core 文档.我们在 何镇汐先生. 悲梦先生. 张仁建先生和 雷欧纳德先生的群中发布了翻译计划招募信息,并召 ...
- DOM的小练习,两个表格之间数据的移动
本次讲的是两个表格之间数据的移动,左边的表格移动到右边,并且左边表格移动内容消失. <head> <meta http-equiv="Content-Type" ...
- postgresql无法安装pldbgapi的问题
要对函数进行调试需要安装插件pldbgapi,当初在windows上面的postgresql实例中执行了一下语句就安装上了: create extension pldbgapi; 但是在linux中执 ...
- MySQL常见面试题
1. 主键 超键 候选键 外键 主 键: 数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合.一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null). 超 键: 在关系中 ...
- Linux自动共享USB设备:udev+Samba
一.概述 公司最近要我实现USB设备插入Ubuntu后,自动共享到网络上,能像Windows共享一样(如\\192.168.1.10)访问里面的内容,不需要写入权限.当时听完这需求,我这新人表示惊呆了 ...