php数据库编程---mysql扩展库
1, Java有一种方式操作数据库, PHP有三种方式来操作mysql数据库。(1)mysql扩展库;(2)mysqli扩展库;(3)pdo;
2, mysql扩展库和mysql数据库区别

3, mysql数据库的三层结构示意图

4, mysql扩展库是一堆函数,是PHP设计者提供给程序员用于完成对mysql数据库的各种操作(CRUD)。使用php的mysql扩展库完成对mysql操作的案例:编写一个程序,这个程序从user1表中读取数据,并打印在网页中。
(1)环境搭建
①启用mysql扩展库,在php.ini文件中配置mysql扩展库,extension=php_mysql.dll。可以通过<?php phpinfo(); ?>查看当前php支持什么扩展库。
② 创建一张用户表,表中插入数据,供程序使用。
(2)编写php程序,完成对用户表的显示。
//mysql扩展库操作mysql数据库步骤如下
//1.获取连接
$conn = mysql_connect("127.0.0.1","root","123456");
if(!$conn){
die("连接失败".mysql_error());
}
//2.选择数据库
mysql_select_db("test",$conn) or die(mysql_error());
//3.设置操作编码(建议有)
mysql_query("set names utf-8");
//4.发送指令sql(ddl数据定义语言,比如创建表,dml数据操作语言,是insert、update、delete,dql数据查询语言,是select,dtl数据事务语句,比如rollback commit..)
$sql = "select * from user1";
$res = mysql_query($sql,$conn);
if(!$res){
echo "操作失败".mysql_error();
}
//5.接收返回的结果,并处理
while($row = mysql_fetch_row($res)){
var_dump($row);
}
//6.释放资源,关闭连接
mysql_free_result($res);
//这句话没有也可以,推荐有这个
mysql_close($conn);
5, 细节
(1)使用完$res结果集后,一定及时的释放资源。
(2)如果没有mysql_close(),系统也会自动关闭。
(3)执行完$res = mysql_query($sql, $conn);,直接关闭连接mysql_close($conn);,对程序没有影响,这是因为$res指向内存中相应资源(数据库数据导入内存),不需要数据库。这和java不一样的。
(4)从$res获取行数据的时候,除了mysql_fetch_row($res),还有三个方法,分别是:
① mysql_fetch_row($res),返回一个索引的数组;
② mysql_fetch_assoc($res),返回一个关联数组;
③ mysql_fetch_array($res),返回索引数组和关联数组(两套);
④ mysql_fetch_object($res),把一行数据,当作一个对象返回
6,对数据库进行增删改时候,流程和查询一样,使用$res = mysql_execute($sql,$conn);,只需改变$sql语句即可。
//mysql扩展库操作mysql数据库步骤如下
//1.获取连接
$conn = mysql_connect("127.0.0.1","root","123456");
if(!$conn){
die("连接失败".mysql_error());
}
//2.选择数据库
mysql_select_db("test",$conn) or die(mysql_error());
//3.设置操作编码(建议有)
mysql_query("set names utf-8");
//4.发送指令sql(ddl数据定义语言,比如创建表,dml数据操作语言,是insert、update、delete,dql数据查询语言,是select,dtl数据事务语句,比如rollback commit..)
$sql = "insert into user1(name,password,email,age) VALUES('小花',md5('123456'),'757433893@qq.com',24)";
//$sql = "update user1 set name= '小兰',password=md5('000000'),email='757433084@qq.com',age=25 where id = 4 ";
//$sql = "delete from user1 where id = 4 ";
$res = mysql_query($sql,$conn);
if(!$res){
echo "操作失败".mysql_error();
}
if(mysql_affected_rows($conn) > 0){
echo "操作成功";
}else{
echo "数据表没有变化";
}
//5.接收返回的结果,并处理
//这句话没有也可以,推荐有这个
mysql_close($conn);
php数据库编程---mysql扩展库的更多相关文章
- php数据库编程---mysqli扩展库
1,mysqli扩展库允许我们访问MySQL数据库,并对MySql数据库进行curd操作.Mysqli扩展库比mysql扩展库加强了. 2,mysqli扩展库和mysql扩展库的比较 (1) mysq ...
- php使用mysql扩展库链接mysql数据库(查询)
php链接数据库可以使用mysql扩展库,mysqli,pdo这几种方式,相比java而言要麻烦一点,因为它不像java那么统一.从代码的难易程度来说php的确要简单许多.步骤大体如下 1.打开数据库 ...
- php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库
1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo mysql扩展库与mysql数据库 ...
- mysql扩展库操作mysql数据库
环境搭建 启用mysql扩展库,在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 查询数据库 1.建库建表 //建库testcreate database ...
- PHP mysql 扩展库 操作mysql数据库步骤
一.mysql 扩展库操作mysql数据库步骤如下: 1.获取连接 2.选择数据库 3.设置操作编码 4.发送指令(ddl数据定义/dml数据操作/dql数据查询/dtl数据事务控制) 5.接收返回的 ...
- PHP基础Mysql扩展库
mysql扩展库操作步骤如下: 1.连接数据库 2.选择数据库 3.设置操作编码 4.发送指令sql,并返回结果集 ddl:数据定义语句 dml:数据操作语句 dql:数据查询 ...
- mysql扩展库-1
启用mysql扩展库 在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 可以通过 phpinfo() 查看当前php支持什么扩展库. 在sql扩展库中创建一 ...
- 【小结】有关mysql扩展库和mysqli扩展库的crud操作封装
现阶段php如果要操作mysql数据库 php给我们提供了3套库 1.mysql扩展库 面向过程操作 2.mysqli扩展库 面向对象操作和面向过程操作并存 安全性和效率高于mysql扩展库 ...
- mysql扩展库应用---在线词典程序范例
1,在mysql中创建数据表words. create table words( id int primary key not null auto_increment, enword varchar( ...
随机推荐
- 【jdbc】【c3p0】c3p0三种配置方式【整理】
c3p0三种配置方式 c3p0的配置方式分为三种,分别是1.setters一个个地设置各个配置项2.类路径下提供一个c3p0.properties文件3.类路径下提供一个c3p0-config.xml ...
- ssh框架,工具类调用service层方法
解决方法: @Component//声明为spring组件 public class CopyFileUtil{ @Autowired private DataFileManager dataFile ...
- Python基础:列表,元组和字典的基本操作
列表(集合list)的基本操作: # 列表的常见操作 nameList = ["张学友", "刘德华", "郭富城", "黎明&q ...
- RedHat Linux设置yum软件源为本地ISO
先挂载ISO到某个目录下(如我的:/media/RHEL_6.0 x86_64 Disc 1) # mount –o loop rhel-server-6.4-x86_64-dvd.iso /medi ...
- CloudStack 4.3功能前瞻
今天CloudStack 4.3已经Feature Freeze了,不会再有新功能加入到这个版本里.我们也可以坐下来看看哪些功能是值得期待的.首先,4.3的UI也秉承扁平化设计,看着更加简洁清爽.见下 ...
- Openssl base64命令
一.简介 对文件件进行base64的编码与解码 二.语法 openssl base64 [-in filename] [-out filename] 三.实例 1.二进制文件与base64编码互转 o ...
- 高性能python编程之协程(stackless)-乾颐堂
我们都知道并发(不是并行)编程目前有四种方式,多进程,多线程,异步,和协程. 多进程编程在python中有类似C的os.fork,当然还有更高层封装的multiprocessing标准库,在之前写过的 ...
- Web测试实践-任务进度-Day03
小组成员 华同学.郭同学.覃同学.刘同学.穆同学.沈同学 任务进度 在经过任务分配阶段后,大家都投入到了各自的任务中,以下是大家今天任务的进度情况汇总. 华同学 & 刘同学(任务1) 1.再对 ...
- 如何让两个div并排显示
正常情况下两个div都是上下排版的,那么怎么让它们并排显示呢? 方法一:都左浮动float:left; 方法二:一个左浮动,一个右浮动 方法三:给两个div都设置display:inline属性,但两 ...
- 手把手教你看KEGG通路图!
手把手教你看KEGG通路图! 亲爱的小伙伴们,是不是正关注代谢通路研究?或者你正面对数据,绞尽脑汁?小编当然不能让亲们这么辛苦,今天就跟大家分享KEGG代谢通路图的正确解读方法,还在迷糊中的小伙伴赶紧 ...