PHP链接MySQL的常用扩展函数


Posted in PHP onOctober 23, 2014

一、PHP连接数据库及基本操作

MySQL采用的是'客户机/服务器'架构。使用PHP安装的MySQL扩展函数,和直接使用客户端软件区访问MySQL数据库服务器,原理一样,都需要向MySQL管理系统发送SQL命令,然后将结果返回给用户。

在PHP中,SQL分为两类(查看SQL语句分类):一是有返回结果集的DQL语句,如select/desc 表名,执行完毕之后,需要PHP处理结果集;二是没有结果集的,如DML、DDL等,但是DML语句执行成功后对数据表的记录有影响。

<?php
//连接数据库,常用参数是主机名、用户名和密码
$link = mysql_connect('localhost','root','123456');
//判断是否连接成功
if(!$link)
{
die('连接失败'.mysql.error()); //连接成功返回资源标识符,失败返回false,mysql_error显示错误信息
}//选择数据库,mysql_error()只在调试中使用,再部署项目时就不要了,不然会泄露数据库信息
mysql_select_db('test') or die('选择数据库失败'.mysql_error());
//mysql_query()可以设置字符集和执行SQL语句
mysql_query('set names utf-8');
$sql = 'insert into test(id,name) values("1","dwqs")';
$result = mysql_query($sql);  //执行sql返回结果集
//处理结果集,insert属于DML,会对表的记录有影响
if($result && mysql_affected_rows() > 0)
{
//mysql_insert_id()返回最后一条新纪录的auto_increment值
echo '插入数据成功'.mysql_insert_id().'<br/>';
}
else
{
echo '插入数据失败,错误号:'.mysql_errno().'错误信息:'.mysql_error().'<br/>';
}
//关闭连接
mysql_close($link);
?>

二、PHP处理select查询结果集

在PHP中执行select语句返回一个结果集,可以用于对各个字段的处理

$result = mysql_query('select * from test');
//获取记录行的个数
$rows = mysql_num_rows($result);
//获取字段个数,即数据列
$cols = mysql_num_fields($result);

如果需要访问结果集中的数据,可以使用下列四个函数中的一个(均以结果集资源符作为参数,并自动返回下一条记录,在表末尾时返回false)

1、mysql_fetch_row():该函数将一条结果记录返回并以一个普通的索引数据保存

2、mysql_fetch_assoc():从结果集中取得一行作为关联数据保存

3、mysql_fetch_array():从结果集中取得一行作为关联数组,或数字数组,或二者兼有。可以使用MYSQL_ASSOC(关联数组形式)、MYSQL_NUM(索引数组形式)和MYSQL_BOTH作为第二个参数,指定返回的数据形态。

4、mysql_fetch_object():从结果集中取得一行作为对象,各个字段以对象方式访问。

建议:没有特殊要求,不要使用mysql_fetch_array(),可以使用mysql_fetch_row()或者mysql_fetch_assoc()实现同样的功能,且效率高。

另外也有三个与结果集相关的常用函数

5、mysql_data_seek(int $num):移动内部结果的指针,$num是想要设定的新的结果集指针的行数。

6、mysql_fetch_lengths(resource $result):取得结果集中每个输出的长度

7、mysql_result(resource $result , int $row[,mixed $field]):返回 MySQL 结果集中一个单元的内容。字段参数可以是字段的偏移量或者字段名,或者是字段表点字段名(tablename.fieldname)。如果给列起了别名('select foo as bar from…'),则用别名替代列名。调用 mysql_result()不能和其它处理结果集的函数混合调用。

PHP 相关文章推荐
PHP简单系统数据添加以及数据删除模块源文件下载
Jun 07 PHP
PHP中::、-&amp;gt;、self、$this几种操作符的区别介绍
Apr 24 PHP
php笔记之:初探PHPcms模块开发介绍
Apr 26 PHP
win7+apache+php+mysql环境配置操作详解
Jun 10 PHP
php 创建以UNIX时间戳命名的文件夹(示例代码)
Mar 08 PHP
一个php短网址的生成代码(仿微博短网址)
May 07 PHP
PHP面向对象自动加载机制原理与用法分析
Oct 14 PHP
Yii2 批量插入、更新数据实例
Mar 15 PHP
PHP实现双链表删除与插入节点的方法示例
Nov 11 PHP
PHP判断一个变量是否为整数、正整数的方法示例
Sep 11 PHP
laravel框架查询数据集转为数组的两种方法
Oct 10 PHP
PHP安全之register_globals的on和off的区别
Jul 23 PHP
使用PHPMailer实现邮件发送代码分享
Oct 23 #PHP
PHP封装分页函数实现文本分页和数字分页
Oct 23 #PHP
20个2014年最优秀的PHP框架回顾
Oct 22 #PHP
PHP获取当前页面URL函数实例
Oct 22 #PHP
PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例
Oct 22 #PHP
百度实时推送api接口应用示例
Oct 21 #PHP
php之curl实现http与https请求的方法
Oct 21 #PHP
You might like
输出控制类
2006/10/09 PHP
PHP 内存缓存加速功能memcached安装与用法
2009/09/03 PHP
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
2012/06/17 PHP
Codeigniter上传图片出现“You did not select a file to upload”错误解决办法
2014/06/12 PHP
php数组转成json格式的方法
2015/03/09 PHP
php递归函数三种实现方法及如何实现数字累加
2015/08/07 PHP
php 常用的系统函数
2017/02/07 PHP
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
2017/02/15 PHP
基于jquery点击自以外任意处,关闭自身的代码
2012/02/10 Javascript
jquery.artwl.thickbox.js  一个非常简单好用的jQuery弹出层插件
2012/03/01 Javascript
Jquery easyui 下loaing效果示例代码
2013/08/12 Javascript
JS JSON对象转为字符串的简单实现方法
2013/11/18 Javascript
js实现文字跟随鼠标移动而移动的方法
2015/02/28 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
详解JS中的快速排序与冒泡
2017/01/10 Javascript
浅谈Node Inspector 代理实现
2017/10/19 Javascript
轻松搞定jQuery+JSONP跨域请求的解决方案
2018/03/06 jQuery
vue中activated的用法
2021/01/03 Vue.js
[00:55]深扒TI7聊天轮盘语音出处3
2017/05/11 DOTA
[38:31]完美世界DOTA2联赛PWL S3 Magma vs GXR 第一场 12.13
2020/12/17 DOTA
查看Python安装路径以及安装包路径小技巧
2015/04/28 Python
python使用mysql数据库示例代码
2017/05/21 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
浅谈Python __init__.py的作用
2020/10/28 Python
详解python爬取弹幕与数据分析
2020/11/14 Python
CSS3中的5个有趣的新技术
2009/04/02 HTML / CSS
纯CSS改变webkit内核浏览器的滚动条样式
2014/04/17 HTML / CSS
马来西亚航空官方网站:Malaysia Airlines
2017/07/28 全球购物
求职信模板标准格式范文
2014/02/23 职场文书
《和田的维吾尔》教学反思
2014/04/14 职场文书
小学校长竞聘演讲稿
2014/05/16 职场文书
学校就业推荐信范文
2014/05/19 职场文书
主要负责人任命书
2014/06/06 职场文书
小学标准化建设汇报材料
2014/08/16 职场文书
学术会议通知范文
2015/04/15 职场文书
python tkinter实现定时关机
2021/04/21 Python