php基础之连接mysql数据库和查询数据

 更新时间:2014年08月07日 09:32:44   投稿:hebedich  
这篇文章主要介绍了php连接mysql数据库和查询数据的方法和示例,需要的朋友可以参考下

连接数据库,有三种方法

1. 常规方式:

$con=mysql_connect($dbhostip,$username,$userpassword) or die("Unable to connect to the MySQL!");
$db = mysql_select_db($dbdatabasename,$con);
//执行语句
$qres=mysql_query("SELECT id,GoodsName FROM user");
//提取一条数据
11 $row=mysql_fetch_row($result);//mysql_fetch_row只能提取出查询结果的第一条记录
//提取多条记录
$reslist = array();
$i=0;
while($row = mysql_fetch_row($res)){
   $reslist[$i] = $row;
   $i++;
  }
mysql_close($con);

//mysql_fetch_row   提取的结果是没有查询中的字段名了(也就是没有键id,GoodsName,只有值),如下图:

//mysql_fetch_assoc 提取的结果有键值,如下图:

//mysql_fetch_array提取的结果有键值,是前面两种的综合,如下图:

在mysql_connect()、mysql_select_db()等函数之前使用@(错误控制运算符),可以忽略掉系统产生的错误信息,然后我们用die()来自定义错误信息;

对于mysql_query()函数的返回值,如果执行的语句有返回值(如SELECT、SHOW、DESCRIBE等),则返回相应数据(成功时)或FALSE(失败时);如果执行的语句没有返回值(如DELETE、DROP、INSERT、UPDATE等),则返回TRUE(成功时)或FALSE(失败时)。

2. 面向对象形式

$db=new mysqli($dbhostip,$username,$userpassword,$dbdatabasename);

if(mysqli_connect_error()){  

  echo 'Could not connect to database.';  

  exit;

}

$result=$db->query("SELECT id,GoodsName FROM user");

$row=$result->fetch_row();

这里用到的是mysqli,意思就是mysql的扩展,既可以通过面向过程的方式也可以通过面向对象的方式与数据库进行交互

3. PDO方法

PDO其实是PHP Database Objects的缩写,中文即PHP数据库对象。它提供了一种统一的PHP与数据库交互的方法。

它的优势在于:只要正确提供数据源,余下对于数据库的基本操作都是一样的。也就是说,同一段代码既可以同MySQL交互,也可以和SQLite3交互,当然也可以和PostgreSQL进行交互,前提是你提供了正确的数据源。

连接MySQL的代码:

$dsn='mysql:host='.$dbhost.';dbname='.$dbdatabase.';' $dbh=new PDO($dsn,$username,$userpass);

SQLite3:

$dsn='sqlite3:"D:\sqlite\user.db"';
$dbh=new PDO($dsn);

PostgreSQL:
$dsn='pgsql:host='.$dbhost.' port=5432 dbname='.$dbdatabase.' user='.$username.' password='.$userpass;
$dbh=new PDO($dsn);

操作 :

$stmt=$dbh->query('SELECT id,name FROM user');
$row=$stmt->fetch();

相关文章

  • 最新mysql 5.7.23安装配置图文教程

    最新mysql 5.7.23安装配置图文教程

    这篇文章主要为大家详细介绍了最新 mysql 5.7.23 安装配置图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • 简单了解mysql InnoDB MyISAM相关区别

    简单了解mysql InnoDB MyISAM相关区别

    这篇文章主要介绍了简单了解mysql InnoDB MyISAM相关区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • MySQL 5.7.18 release版安装指南(含有bin文件版本)

    MySQL 5.7.18 release版安装指南(含有bin文件版本)

    这篇文章主要介绍了MySQL 5.7.18 release版安装指南,本文只谈论release版,即含有bin文件版本,需要的朋友可以参考下
    2017-04-04
  • MySQL DATE_ADD和ADDDATE函数实现向日期添加指定时间间隔

    MySQL DATE_ADD和ADDDATE函数实现向日期添加指定时间间隔

    这篇文章主要介绍了MySQL DATE_ADD和ADDDATE函数实现向日期添加指定时间间隔,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • MySQL处理重复数据的方法

    MySQL处理重复数据的方法

    这篇文章主要介绍了MySQL处理重复数据的方法,处理重复数据包括防止表中出现重复数据、统计重复数据、过滤删除重复数据,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • Mac系统下源码编译安装MySQL 5.7.17的教程

    Mac系统下源码编译安装MySQL 5.7.17的教程

    这篇文章主要介绍了Mac系统下源码编译安装MySQL 5.7.17的教程详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • 在OneProxy的基础上实行MySQL读写分离与负载均衡

    在OneProxy的基础上实行MySQL读写分离与负载均衡

    基于Libevent机制实现,单个实例可以实现25万的SQL转发能力,用一个OneProxy节点可以带动整个MySQL集群,为业务发展贡献一份力量,下面由小编来为大家简单说说
    2019-05-05
  • Linux下mysql 8.0.25 安装配置方法图文教程

    Linux下mysql 8.0.25 安装配置方法图文教程

    这篇文章主要为大家详细介绍了Linux下mysql 8.0.25 安装配置方法图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 使用pt-kill根据一定的规则来kill连接的方法

    使用pt-kill根据一定的规则来kill连接的方法

    pt-kill 是一个优秀的kill MySQL连接的一个工具,是percona toolkit的一部分,在因为空闲连接较多导致超过最大连接数、某个有问题的sql导致mysql负载很高时,都需要将一些连接kill掉,这个工具主要就是这个用途
    2016-04-04
  • mysql忘记密码怎么办(windows linux)

    mysql忘记密码怎么办(windows linux)

    本文给大家介绍windows系统和linux系统下mysql忘记密码怎么办的相关资料,本文给出了合理的解决方案,非常好用,需要的朋友参考下
    2015-11-11

最新评论