爱站屋博客 - 好东西不私藏,大家一起分享!关于博客 留言板

网站首页 技术教程 正文

PH斗牛游戏19119澳门公司P的mysql扩展整理,操作数据库的实现过程分析

2019-08-27 技术教程 15 ℃

[db:标签]签:数组   text   连接   var   修改   nec   关联数组   数据库的操作   drop   

从某种程度上说,php就是一个数据库的客户端.

尽管官方已经不推荐使用,php7.0甚至已经移除了mysql扩展.但是学习一下面向过程的编程思想也是不错的.

 

核心步骤

连接数据库 => 执行sql语句

其实通过mysql扩展对数据库的操作都是围绕这两个步骤来的

 

详细步骤

详细步骤程图如下:

PH斗牛游戏19119澳门公司P的mysql扩展整理,操作数据库的实现过程分析-第1张图片-【秒速时时彩开奖结果】爱站屋博客

查询操作

下面程序可以实现查询本地test数据库中class表,并将查询结果输出:

<?php header("content-type:text/html;charset:utf-8"); //第一步:连接数据库 $conn [email protected]mysql_connect(‘localhost‘,‘root‘,‘root‘); if (!$conn){     die("连接失败,错误信息".mysql_error()); } //第二步:选择数据库 mysql_select_db("test");  //第三步:设置字符集 mysql_set_charset("utf8");  //第四步:创建sql语句 $sql = "select* from `class`";  //第五步:执行sql if($res = mysql_query($sql)){     while($row =mysql_fetch_assoc($res)){         echo "<pre>";         var_dump($row);         echo "</pre>";     } }
//第六步:关闭结果集
mysql_free_result
($res);

//第七步:释放连接
mysql_close
($conn);

 

mysql_query()函数的参数如果是查询操作,执行后将返回一个指向查询结果的资源文件

  如果查询失败,将返回一个空字符串

 

mysql_fetch_开头的函数一共有四个,都能够获取函数的查询结果:

mysql_fetch_row:将查询结果以索引数组的形式返回

mysql_fetch_assoc:返回关联数组

mysql_fetch_array:会把索引数组和关联数组都返回

mysql_fectch_object:返回对象的形式

以上面代码为例

mysql_fetch_assoc输出的结果为:

PH斗牛游戏19119澳门公司P的mysql扩展整理,操作数据库的实现过程分析-第2张图片-【秒速时时彩开奖结果】爱站屋博客

改为mysql_fetch_row输出的结果为

 PH斗牛游戏19119澳门公司P的mysql扩展整理,操作数据库的实现过程分析-第3张图片-【秒速时时彩开奖结果】爱站屋博客

dml操作

 查询操作需要获取查询结果,增删改操作不需要,因此步骤上略有不同:

<?php header("content-type:text/html;charset:utf-8"); //第一步:连接数据库 $conn [email protected]mysql_connect(‘localhost‘,‘root‘,‘root‘); if (!$conn){     die("连接失败,错误信息".mysql_error()); } //第二步:选择数据库 mysql_select_db("test");  //第三步:设置字符集 mysql_set_charset("utf8");  //第四步:创建sql语句 $sql = "delete from class where `sname`=‘谢尔顿李库伯‘";  //第五步:执行sql $exec =mysql_query($sql); if (mysql_affected_rows($conn)){     echo ‘操作成功,对记录产生影响‘; }else{     echo ‘操作失败‘.mysql_error(); }  //不需要释放资源 //第六步:释放连接 mysql_close($conn);

 

与查询操作不同之处:

  1.判断执行是否成功应该使用mysql_affected_rows()函数,而不是mysql_query()函数:

     dml操作都是会对数据表产生影响的,

    mysql_query()里的sql语句即使执行成功,也未必会对数据表产生影响(比如删除一个不存在的列,或者修改的结果和原结果相同)

    因此要判断操作是否成功,就要判断是否对数据库产生了影响,mysql_affected_rows()就可以实现这一功能,数据库改变时,该函数会返回ture,否则返回false

  2.不需要关闭结果集,因为本身就没有结果集

  3.mysql_query()执行的dml操作时的返回值与查询操作不同,他将返回一个Boolean类型的值,执行成功为true,执行失败为false

 

插入和修改操作与删除操作基本相同,只需要修改对应的sql语句即可.

 

数据库的其他操作

除了对数据表记录的操作,mysql扩展还能执行很多数据库操作:如show\drop\alter等

以删除数据表操作为例:与dml操作相比,只需要修改sql语句和判断执行是否成功的语句即可

<?php header("content-type:text/html;charset:utf-8"); //第一步:连接数据库 $conn [email protected]mysql_connect(‘localhost‘,‘root‘,‘root‘); if (!$conn){     die("连接失败,错误信息".mysql_error()); } //第二步:选择数据库 mysql_select_db("test");  //第三步:设置字符集 mysql_set_charset("utf8");  //第四步:创建sql语句 $sql = "drop table deletetest";  //第五步:执行sql if (mysql_query($sql)){     echo ‘操作成功‘; }else{     echo ‘操作失败‘.mysql_error(); }  //不需要释放资源 //第六步:释放连接 mysql_close($conn);

 

PHP的mysql扩展整理,操作数据库的实现过程分析

标签:数组   text   连接   var   修改   nec   关联数组   数据库的操作   drop   


猜你喜欢

本文暂时没有评论哦(●'◡'●)

欢迎 发表评论:

:如果评论未出现,请刷新网页,谢谢合作!

会员中心
搜索
ip签名图
    IP签名图
网站分类
标签列表
文章归档
站点信息
  • 文章总数:112038
  • 页面总数:3
  • 分类总数:12
  • 标签总数:629
  • 评论总数:2060
  • 浏览总数:1241363
爱站云安全认证