PHP连接MySQL数据库操作代码实例解析


Posted in PHP onJuly 11, 2020

方法一:普通方法(面向过程)

首先,先做出如下假设(也适用与方法二和方法三)

$username=your_name;
 $userpass=your_pass;
 $dbhost=localhost;
 $dbdatabase=your_database;

下面是关键步骤:

//生成一个连接
$db_connect=mysql_connect($dbhost,$username,$userpass) or die("Unable to connect to the MySQL!");

//选择一个需要操作的数据库
mysql_select_db($dbdatabase,$db_connect);

//执行MySQL语句
$result=mysql_query("SELECT id,name FROM user");

//提取数据
$row=mysql_fetch_row($result);

//关闭链接
mysql_close($db_connect);

代码注释已经说明了一切。不过这里还需要做一些补充。

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

②提取数据的时候,除了上面的mysql_fetch_row,常见的还有mysql_fetch_assoc和mysql_fetch_array,具体差别请查阅我的另一篇随笔《PHP中mysql_fetch_row()、mysql_fetch_assoc()和mysql_fetch_array()的联系》;

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

方法二:面向对象方法

其实这种方法和普通方法非常类似,只是把相应的函数换成了面向对象方法,直接看代码。

$db=new mysqli($dbhost,$username,$userpass,$dbdatabase);
if(mysqli_connect_error()){
  echo 'Could not connect to database.';
  exit;
}

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

这里用到的是mysqli,意思就是mysql的扩展,既可以通过面向过程的方式也可以通过面向对象的方式与数据库进行交互,唯一不同的是调用函数(对象方法)的方式不一样。

方法三: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:"C:\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();

至此,文章告一段落。当然,上面只是简单的介绍了一下PHP与数据库有关的最简单的操作,后面还有很多比如插入、排序、防止SQL注入等等一些方面的知识需要深入学习。希望有机会能够和大家一起探讨,共同进步。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
将RTF格式的文件转成HTML并在网页中显示的代码
Oct 09 PHP
php框架Phpbean说明
Jan 10 PHP
php获取后台Job管理的实现代码
Jun 10 PHP
PHP提取字符串中的图片地址[正则表达式]
Nov 12 PHP
解析php中获取系统信息的方法
Jun 25 PHP
教你如何快捷的使用cmd访问mysql小技巧
May 26 PHP
php实现根据字符串生成对应数组的方法
Sep 22 PHP
php中current、next与reset函数用法实例
Nov 17 PHP
使用PHP similar text计算两个字符串相似度
Nov 06 PHP
Docker 如何布置PHP开发环境
Jun 21 PHP
Yii+upload实现AJAX上传图片的方法
Jul 13 PHP
分享PHP-pcntl 实现多进程代码
Sep 30 PHP
PHP如何使用cURL实现Get和Post请求
Jul 11 #PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
Jul 10 #PHP
PHP实现简易用户登录系统
Jul 10 #PHP
PHP二维数组分页2种实现方法解析
Jul 09 #PHP
详解阿里云视频直播PHP-SDK接入教程
Jul 09 #PHP
PHP利用curl发送HTTP请求的实例代码
Jul 09 #PHP
PHP使用POP3读取邮箱接收邮件的示例代码
Jul 08 #PHP
You might like
在PHP中利用XML技术构造远程服务(下)
2006/10/09 PHP
用文本文件制作留言板提示(下)
2006/10/09 PHP
php中url传递中文字符,特殊危险字符的解决方法
2013/08/17 PHP
PHP实现取得HTTP请求的原文
2014/08/18 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
学习php设计模式 php实现模板方法模式
2015/12/08 PHP
jquery form 隐藏的input 选择
2014/04/29 Javascript
js实现四舍五入完全保留两位小数的方法
2016/08/02 Javascript
详解AngularJs中$sce与$sceDelegate上下文转义服务
2016/09/21 Javascript
Javascript 调用 ActionScript 的简单方法
2016/09/22 Javascript
简单学习vue指令directive
2016/11/03 Javascript
JavaScript编写九九乘法表(两种任选)
2017/02/04 Javascript
JS实现多张图片预览同步上传功能
2017/06/23 Javascript
JS实现京东商品分类侧边栏
2020/12/11 Javascript
python对字典进行排序实例
2014/09/25 Python
Python性能优化的20条建议
2014/10/25 Python
Python中使用不同编码读写txt文件详解
2015/05/28 Python
Python中文件I/O高效操作处理的技巧分享
2017/02/04 Python
python print 按逗号或空格分隔的方法
2018/05/02 Python
对python Tkinter Text的用法详解
2018/10/11 Python
浅谈Python 列表字典赋值的陷阱
2019/01/20 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
2019/06/25 Python
Windows+Anaconda3+PyTorch+PyCharm的安装教程图文详解
2020/04/03 Python
python 提高开发效率的5个小技巧
2020/10/19 Python
python实现b站直播自动发送弹幕功能
2021/02/20 Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
2021/03/04 Python
html5 datalist 选中option选项后的触发事件
2020/03/05 HTML / CSS
土木工程实习生自我鉴定
2013/09/19 职场文书
自荐信格式范文
2013/10/07 职场文书
在职人员函授期间自我评价分享
2013/11/08 职场文书
大学生毕业求职信
2014/06/12 职场文书
社区党建工作汇报材料
2014/08/14 职场文书
2015年度酒店客房部工作总结
2015/05/25 职场文书
初婚初育证明范本
2015/06/18 职场文书
高一作文之乐趣
2019/11/21 职场文书
Python List remove()实例用法详解
2021/08/02 Python