• 环境搭建

启用mysql扩展库,在php.ini文件中去配置mysql扩展库

extension=php_mysql.dll

  • 查询数据库

1、建库建表

//建库test
create database test;
//用库test
use test;
//建表user1
create table user1(
id int primary key auto_increment,
name varchar(32) not null,
password varchar(64) not null,
age tinyint unsigned not null,
birthday date not null
);
//增加数据
insert into user1 (name,password,age,birthday) values ('lm',md5('lm'),25,'1991-01-02');
insert into user1 (name,password,age,birthday) values ('lxz',md5('lxz'),25,'1991-02-03');
insert into user1 (name,password,age,birthday) values ('wy',md5('wy'),25,'1991-03-04');

2、查询数据库

 <?php
//连接数据库
$conn=mysql_connect('localhost','root','root');
//如果连接失败,报错
if(!$conn){
die("连接数据库失败".mysql_error());
}
//选择数据库
mysql_select_db('test');
//设置操作编码
mysql_query('set names utf8',$conn);
//sql语句,实现查询操作
$sql="select * from user1";
//执行sql语句
$res=mysql_query($sql,$conn);
//对结果处理
while($row=mysql_fetch_row($res)){
echo $row[0]."--".$row[1]."--".$row[2]."--".$row[3]."<br/>";
//var_dump($row);
}
//释放资源,关闭数据库
mysql_free_result($res);
mysql_close($conn);
?>

结果如下:

问题:查询不到第一行?

3、下面介绍四个结果处理函数的区别

mysql_fetch_row($res)  返回索引数组,如下:

mysql_fetch_assoc($res)  返回关联数组,如下:

mysql_fetch_array($res)  返回索引数组+关联数组,如下:

mysql_fetch_object($res)  返回对象,如下:

  •  增删改数据库
 <?php
//对数据库增删改操作,dml语句(insert,delete,upgate)
//连接数据库
$conn=mysql_connect('localhost','root','root');
//如果连接失败,报错
if(!$conn){
die("连接数据库失败".mysql_error());
}
//选择数据库
mysql_select_db('test');
//设置字符格式
mysql_query('set names utf8',$conn);
//sql语句,实现增删改操作
$sql="insert into user1 (name,password,age,birthday) values('skl',md5('skl'),25,'1991-04-05')";
//$sql="delete from user1 where name='skl'";
//$sql="update user1 set age=18 where name='skl'";
//执行sql语句
$res=mysql_query($sql,$conn);
//dml语句执行后返回结果为布尔型
if(!$res){
echo "操作失败".mysql_error();
}
if(mysql_affected_rows($conn)>0){
echo "操作成功";
}else{
echo "没有影响到行数";
}
//关闭数据库
mysql_close($conn);
?>
  • 把对数据库的操作封装成类

mysqlTool.class.php

 <?php
class MysqlTool{
private $host="localhost";
private $userName="root";
private $pwd="root";
private $dbName="test";
private $conn;
//连接数据库函数,构造函数(与类同名),实例化后自动调用
public function MysqlTool(){
$this->conn=mysql_connect($this->host,$this->userName,$this->pwd);
if(!$this->conn){
die("连接数据库失败".mysql_error());
}
mysql_select_db($this->dbName,$this->conn);
mysql_query("set names utf8",$this->conn);
}
//dql语句,完成select
public function executeDql($sql){
$res=mysql_query($sql,$this->conn) or die("操作失败".mysql_error());
return $res;
}
//dml语句,完成insert,delete,update
public function executeDml($sql){
$res=mysql_query($sql,$this->conn);
if(!$res){
return 0;//0表示操作失败
}else{
if(mysql_affected_rows($this->conn)>0){
return 1;//1表示操作成功
}else{
return 2;//2表示没有行数影响
}
}
}
//关闭数据库
public function mysqlClo(){
mysql_close($this->conn);
}
}
?>

实例化类完成查询数据库操作:

 <?php
//引入类文件
require_once "mysqlTool.class.php";
//对类实例化
$mysqlTool=new MysqlTool();
//查询数据库
$sql="select * from user1";
$res=$mysqlTool->executeDql($sql);
while($row=mysql_fetch_row($res)){
echo $row[0]."--".$row[1]."--".$row[2]."--".$row[3]."<br/>";
}
mysql_free_result($res);
$mysqlTool->mysqlClo();
?>

实例化类完成增删改数据库操作:

 <?php
//引入类文件
require_once "mysqlTool.class.php";
//对类实例化
$mysqlTool=new MysqlTool();
//增删改数据库
//$sql="insert into user1 (name,password,age,birthday) values ('skl',md5('skl'),25,'1991-04-05')";
//$sql="delete from user1 where name='skl'";
$sql="update user1 set age=18 where name='skl'";
$res=$mysqlTool->executeDml($sql);
if($res==0){
echo "操作失败";
}else if($res==1){
echo "操作成功";
}else if($res==2){
echo "没有行数影响";
}
$mysqlTool->mysqlClo();
?>

mysql扩展库操作mysql数据库的更多相关文章

  1. php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库

    1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo     mysql扩展库与mysql数据库 ...

  2. PHP mysql 扩展库 操作mysql数据库步骤

    一.mysql 扩展库操作mysql数据库步骤如下: 1.获取连接 2.选择数据库 3.设置操作编码 4.发送指令(ddl数据定义/dml数据操作/dql数据查询/dtl数据事务控制) 5.接收返回的 ...

  3. mysqli扩展库操作mysql数据库

    配置环境 配置php.ini文件让php支持mysqli扩展库 extension=php_mysqli.dll 建库建表 详见博客 “mysql扩展库操作mysql数据库” 查询数据库 <?p ...

  4. 使用php的mysqli扩展库操作mysql数据库

    简单介绍mysqli: 1.mysqli(mysql improve mysql扩展库的增强版) mysql扩展库和mysqli扩展库的区别 1.mysqli的稳定性  安全性 和 执行效率有所提高 ...

  5. php使用mysql扩展库链接mysql数据库(查询)

    php链接数据库可以使用mysql扩展库,mysqli,pdo这几种方式,相比java而言要麻烦一点,因为它不像java那么统一.从代码的难易程度来说php的确要简单许多.步骤大体如下 1.打开数据库 ...

  6. 通过表名显示数据库中该表的表头和内容(mysql扩展库操作)

    编写一个函数,接收一个表名,然后把表的表头和内容显示在网页 <?php function readTab($tableName){ $conn=mysql_connect("local ...

  7. 在线小词典(mysql扩展库操作)

    输入英文查询中文 1.建表 create table words( id int primary key auto_increment, enWords varchar(32) not null, c ...

  8. php数据库编程---mysql扩展库

    1, Java有一种方式操作数据库, PHP有三种方式来操作mysql数据库.(1)mysql扩展库:(2)mysqli扩展库:(3)pdo: 2, mysql扩展库和mysql数据库区别 3, my ...

  9. mysql扩展库-1

    启用mysql扩展库 在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 可以通过 phpinfo() 查看当前php支持什么扩展库. 在sql扩展库中创建一 ...

随机推荐

  1. Step2:配置Oracle Dataguard

    接着step1我用Rman duplicate测试下. 1,2两步请参考step1中的1,2 3.startup nomount (standby),一定要是nomount. 4.rman dupli ...

  2. C++里面方便的打印日志到文件

    ofstream write; //write只是个名字 你可以定义为任何其他的名字 write.open("D:\prj\Robot\dev\face\facerecog\facereco ...

  3. Android史上功能最全的日历控件

    ※效果 ※用法 package com.fancyy.calendarweight; import java.util.ArrayList; import java.util.List; import ...

  4. 判断URL是否能链接成功

    判断网络文件 存在 3秒之内返回结果 方法2:         /// <summary>         /// 判断网络文件是否存在 1.5秒得到出结果 如这样的格式  http:// ...

  5. Redis与MySQL的结合

    Redis与MySQL的结合 目前大部分互联网公司使用MySQL作为数据的主要持久化存储,那么如何让Redis与MySQL很好的结合在一起呢?我们主要使用了一种基于MySQL作为主库,Redis作为高 ...

  6. [React] React Fundamentals: Mixins

    Mixins will allow you to apply behaviors to multiple React components. Components are the best way t ...

  7. 加速Android Studio/Gradle构建

    已经使用Android Studio进行开发超过一年,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能build一个release的安装包,在网上查找资料,发现可以通过一些配置可以 ...

  8. Android(java)学习笔记165:Android的Junit调试

    编写android应用的时候,往往我们需要编写一些业务逻辑实现类,但是我们可能不能明确这个业务逻辑是否可以成功实现,特别是逻辑代码体十分巨大的时候,我们不可能一行一行检查自己的代码,为了解决这样的问题 ...

  9. easy_painting

    最近感觉结构,比例抓的容易多了.

  10. (整理)FORM:Oracle EBS客制化Form的菜单栏用法说明

    用户最多可以定义45个form-level的trigger,名称必须为SPECIALn, 其中SPECIAL1 to SPECIAL15属于Tools菜单项,放在“工具”主菜单下. SPECIAL16 ...