mysql扩展库操作mysql数据库
- 环境搭建
启用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数据库的更多相关文章
- php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库
1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo mysql扩展库与mysql数据库 ...
- PHP mysql 扩展库 操作mysql数据库步骤
一.mysql 扩展库操作mysql数据库步骤如下: 1.获取连接 2.选择数据库 3.设置操作编码 4.发送指令(ddl数据定义/dml数据操作/dql数据查询/dtl数据事务控制) 5.接收返回的 ...
- mysqli扩展库操作mysql数据库
配置环境 配置php.ini文件让php支持mysqli扩展库 extension=php_mysqli.dll 建库建表 详见博客 “mysql扩展库操作mysql数据库” 查询数据库 <?p ...
- 使用php的mysqli扩展库操作mysql数据库
简单介绍mysqli: 1.mysqli(mysql improve mysql扩展库的增强版) mysql扩展库和mysqli扩展库的区别 1.mysqli的稳定性 安全性 和 执行效率有所提高 ...
- php使用mysql扩展库链接mysql数据库(查询)
php链接数据库可以使用mysql扩展库,mysqli,pdo这几种方式,相比java而言要麻烦一点,因为它不像java那么统一.从代码的难易程度来说php的确要简单许多.步骤大体如下 1.打开数据库 ...
- 通过表名显示数据库中该表的表头和内容(mysql扩展库操作)
编写一个函数,接收一个表名,然后把表的表头和内容显示在网页 <?php function readTab($tableName){ $conn=mysql_connect("local ...
- 在线小词典(mysql扩展库操作)
输入英文查询中文 1.建表 create table words( id int primary key auto_increment, enWords varchar(32) not null, c ...
- php数据库编程---mysql扩展库
1, Java有一种方式操作数据库, PHP有三种方式来操作mysql数据库.(1)mysql扩展库:(2)mysqli扩展库:(3)pdo: 2, mysql扩展库和mysql数据库区别 3, my ...
- mysql扩展库-1
启用mysql扩展库 在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 可以通过 phpinfo() 查看当前php支持什么扩展库. 在sql扩展库中创建一 ...
随机推荐
- windows 下安装elasticsearch
1.下载 elasticsearch-2.3.3.zip 注意::elasticsearch 版本太高的话,java运行不起来 elasticsearch-1.5.2下载地址 http://downl ...
- solrj6.2异常--Expected mime type application/octet-stream but got text/html.
org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error from server at http://19 ...
- 最火的Android开源项目(二)
在<直接拿来用!最火的Android开源项目(一)>中,我们详细地介绍了GitHub上最受欢迎的TOP20 Android开源项目,引起了许多读者的热议,作为开发者,你最常用的是哪些开源项 ...
- [Javascript] Drawing Paths - Curves and Arcs
window.onload = function() { var canvas = document.getElementById("canvas"), context = can ...
- 从BAE到SAE,从SAE又回到BAE
版权声明:本文为博主原创文章,未经博主允许不得转载. [很久以后] 这段话是很久之后补充的,发现错误要勇于改正,以下红色字体是对以前观点的改正, 大概总结下: 1.bae最大缺点是需要备案,不过现在看 ...
- 导演类(CCDirector)
- IIS 返回 405 - 不允许用于访问此页的 HTTP 谓词。终极解决办法!!!!
首先这个问题在其他网站(CSDN,新浪博客等) 回答基本都是没有回答到"根本"上面来(而且总在纠结要不要勾选"全部谓词") 我是自己对比了本地IIS之后得出的结 ...
- E: Sub-process /usr/bin/dpkg returned an error code (1)
E: Sub-process /usr/bin/dpkg returned an error code (1) 错误描述 dpkg: error processing archive /var/cac ...
- Linux C —— 多线程
为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/ShiJiaqi. http://www.cnblogs.com/shijiaqi1066/p/5769417. ...
- HDU-1060(简单数学)
Leftmost Digit Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) P ...