(1)数据库操作的基本流程:

    

     •    建立连接(认证身份)
• 客户端向服务器端发送sql命令
• 服务器端执行命令,并返回执行的结果
• 客户端接收结果(并显示)
• 断开连接

(2)php中操作数据库的基本代码和流程

  

 基本流程:
,连接数据库:
$mylink = mysqli_connect(“localhost”, ‘root’, ‘’);
,设定连接编码(通常是utf8)
mysql_set_charset(“utf8”); //也可以使用:mysql_query(“set names utf8”);
,选择数据库(如有需要)
mysql_select_db(“数据库名”); //也可以使用:mysql_query(“use 数据库名”);
,执行sql命令。
$result = mysql_query( “几乎任何sql语句 ”);
返回的结果通常需要分两种情形进行处理:
   4.1:如果是无返回数据的语句:
   4.1. 如果$result为true,表示执行成功
   4.1. 如果$result为false,表示执行失败
   4.2:如果是有返回数据的语句:
   4.2. 如果$result为false,表示执行失败
   4.2. 否则,执行成功,需要继续从结果中取出数据并显示出来。

(3)上面代码样例展示:

        所选的数据库:thkphp5,管理员是root,密码是root,表格是zixun,里面的数据展示:

我的PHP代码:

 <?php

    $link= mysqli_connect('localhost','root','root');
// mysqli_character_set_name();
mysqli_query($link,"set names utf8");
mysqli_select_db($link,'thkphp5');
$sql='select * from zixun';
$result=mysqli_query($link,$sql);
while( $record = mysqli_fetch_array($result )){
//mysql_fetch_array()函数的作用类似foreach对数组的作用:遍历(结果集)
//它每次去的结果集的“一行数据”,并“装入”到数组 $record 中
//该数组的下标就是该select的字段名,值就是对应行的数据值
echo "\n";
echo "****" . var_dump($record) . "****";
echo "\n";
} ?>

上面的是展示那个zixun表格的所有数据,现在我显示其中的   'Zid'   一项数据:

 <?php

    $link= mysqli_connect('localhost','root','root');
// mysqli_character_set_name();
mysqli_query($link,"set names utf8");
mysqli_select_db($link,'thkphp5');
$sql='select * from zixun';
$result=mysqli_query($link,$sql);
while( $record = mysqli_fetch_array($result )){
//mysql_fetch_array()函数的作用类似foreach对数组的作用:遍历(结果集)
//它每次去的结果集的“一行数据”,并“装入”到数组 $record 中
//该数组的下标就是该select的字段名,值就是对应行的数据值
echo "\n";
echo "****" . $record['Zid'] . "****";
echo "\n";
} ?>

结果展示:

 补充php操作mysql的函数:
$record = mysql_fetch_array( 结果集$result );
$n1 = mysql_num_rows( 结果集$result ): 获取结果集的行数
$n2 = mysql_num_fields( 结果集$result ): 获取结果集的列数
mysql_field_name( 结果集$result, $i ): 获取结果集中的第i个字段名(i从0开始)

比如:我再插入一个数据,代码展示:

 <?php

    $link= mysqli_connect('localhost','root','root');
// mysqli_character_set_name();
mysqli_query($link,"set names utf8");
mysqli_select_db($link,'thkphp5');
$sql='INSERT into zixun(ZX_id,ZX_name,ZX_fenlei,ZX_zuozhe,gengxin_time,liulan_cishu,fabu_zhuangtai) values(100020,\'english\',\'理论\',\'王超\',\'2017-08-10 12:58:01\',100,\'草稿\');';
$result=mysqli_query($link,$sql);
if($result){
echo "插入成功!!!";
}else{
echo "插入失败!!!!";
}

然后结果展示:

那个100020就是我们的插入数据

24)PHP,数据库的基本知识的更多相关文章

  1. 基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用

    在花了不少时间研究学习了MongoDB数据库的相关知识,以及利用C#对MongoDB数据库的封装.测试应用后,决定花一些时间来总结一下最近的研究心得,把这个数据库的应用单独作为一个系列来介绍,希望从各 ...

  2. 数据库的有关知识==>>我们的血泪史之经典练习(1-2)

    今天给大家说说数据库的有关知识 抒情一下,想在好困,真的,虽然我在这温暖的教室,身边有知心的盆友, ,很高兴还能是学生的一员,我们还年轻,我们也不会想的太多,高高兴兴上学,快快乐乐回家,每天吃的饱饱, ...

  3. SQL server2005学习笔记(一)数据库的基本知识、基本操作(分离、脱机、收缩、备份、还原、附加)和基本语法

    在软件测试中,数据库是必备知识,假期闲里偷忙,整理了一点学习笔记,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数 ...

  4. SQL server学习(一)数据库的基本知识、基本操作(分离、脱机、收缩、备份、还原、附加)和基本语法

    在软件测试中,数据库是必备知识,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数据库脱机.联机操作 数据库收缩操作 ...

  5. 2. Mysql数据库的入门知识

    2. Mysql数据库的入门知识 (1)打开Windows系统提供的服务查看相应的服务. (2)在Windows任务管理器的进程中查看 (3)使用命令行管理windows的Mysql数据库服务. Ne ...

  6. SQL server学习(一)数据库的基本知识、基本操作和基本语法

    在软件测试中,数据库是必备知识,假期闲里偷忙,整理了一点学习笔记,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数 ...

  7. 数据库 MySQL基础知识

    (关于MySQL的安装,具体见下面博客:http://www.cnblogs.com/wj-1314/p/7573242.html) 一.什么是数据库 ? 数据库是按照数据结构来组织,存储和管理数据的 ...

  8. ORACLE数据库 DBA常用知识

    <常用命令参考> 个系统变量值 SQL> show user --显示当前连接用户 SQL> show error --显示错误 SQL> set heading off ...

  9. HBase数据库相关基本知识

    HBase数据库相关知识 1. HBase相关概念模型 l  表(table),与关系型数据库一样就是有行和列的表 l  行(row),在表里数据按行存储.行由行键(rowkey)唯一标识,没有数据类 ...

随机推荐

  1. SpringCloud学习之Stream消息驱动【默认通道】(十)

    在实际开发过程中,服务与服务之间通信经常会使用到消息中间件,而以往使用了中间件比如RabbitMQ,那么该中间件和系统的耦合性就会非常高,如果我们要替换为Kafka那么变动会比较大,这时我们可以使用S ...

  2. Oracle 基础1

    oracle基础 表空间: Oracle数据库对数据的管理是基于表空间的概念来的, 各种数据的以及存储数据的优化, 实际上也是通过优化表空间来实现的 表空间分类: 永久表空间 用来存放表的数据, 视图 ...

  3. hook鼠标键盘记录和回放

    unit Unit1; // download by http://www.codefans.net interface uses Windows, Messages, SysUtils, Class ...

  4. SDWebImage清理缓存

    [[SDImageCache sharedImageCache] getSize]//计算缓存的大小,单位B float tmpSize = [[SDImageCache sharedImageCac ...

  5. VMware CentOS 设置IP地址

    VMware CentOS 设置IP地址 1. 设置虚拟机网络编辑器:参考:https://www.cnblogs.com/1285026182YUAN/p/10440443.html 2. Cent ...

  6. CSU_1414 Query On a Tree BFS序+DFS时间戳进行预处理

    2014 csu校赛 I 题,比赛的时候拿着他看了几个小时愣是没弄出好的方法,我们也想过统计出每个root的节点总数,然后减去离它d层的子节点的数目,即为答案.但是因为树的存储是无序的,所以每次为了找 ...

  7. 【MySQL 组复制】1.组复制技术简介

    组复制有两种模式 单主模式(single-primary/single-master)下自动选举出一个主节点,从而只允许在同一时刻只有该主节点可以更新数据. 对于MySQL的高级使用人员,可以通过复制 ...

  8. Maven--mirror 和 repository

    参考:http://blog.csdn.net/isea533/article/details/22437511   http://www.cnblogs.com/xdouby/p/6502925.h ...

  9. Java学习笔记--精品札记

    forech循环增强版(JDK1.7新特性) for(数组单位元素类型 i:遍历目标数组){ 代码块 } char(只能放单个字符)数组可以直接遍历不需要循环,其他数组不可以,必须遍历 toStrin ...

  10. 条款02:尽量以const,enum,inline替换#define

    目录 1. 总结 2. 使用const常量或enum替换宏常量 class外部的常量指针 class专属常量 1. 总结 对于单纯常量,最好以const常量或enum替换#define 对于宏代码段, ...