- MySQL一般用于中小企业
连接数据库
- mysql_connect(‘数据库地址’,’数据库用户名’,’密码’)
- 连接成功,返回mysql连接标识符
- 连接失败,返回false
- mysql_select_db(‘数据库’),两个返回值
- 成功 true 失败 false
<?php
header("Content-type:text/html;charset=utf-8");
if($con= mysql_connect("localhost","root","password")){
echo "连接成功";
}else{
echo "连接失败";
}
if(mysql_select_db('info')){
echo "连接数据库成功";
}else{
echo "连接数据库失败";
}
if( mysql_query('insert into test(name) values("rose")')){
echo "插入操作成功";
}else{
echo "插入操作失败";
echo mysql_error();//可以打印错误信息
}
mysql_close($con);
?>
- 点击浏览,查看插入结果
- 建立了info数据库
PHP支持哪些数据库
PHP通过安装相应的扩展来实现数据库操作,现代应用程序的设计离不开数据库的应用,当前主流的数据库有MsSQL,MySQL,Sybase,Db2,Oracle,PostgreSQL,Access等,这些数据库PHP都能够安装扩展来支持,一般情况下常说的LAMP架构指的是:Linux、Apache、Mysql、PHP.
<?php
if (function_exists('mysql_connect')) {
echo 'Mysql扩展已经安装';
}
<?php
$host = '127.0.0.1';
$user = 'code1';
$pass = '';
//在这里编写数据库连接代码
mysql_connect("127.0.0.1","code1","");
mysql_connect("127.0.0.1","code1","");
mysql_select_db('code1'); //选择数据库
mysql_query("set names 'utf8'"); //设置当前连接使用的字符编码
关闭数据库
- 连接标识符
- mysql_close($con)
内置Mysql函数
- mysql_query() 执行一条SQL语句,返回一条资源句柄,通过该资源获取查询结果集中的数据
- link1,$link2…
- mysql_query( mysql, link1 [link2…])
- insert成功的时候,返回true;
- 访问方式-服务器IP/pma
- 使用phpmyadmin使用mysql数据库
- 建立数据表,进行测试
$res=mysql_query('select * from user limit1'); //返回一个资源句柄(resource)
$row=mysql_fetch_array($res);//句柄可以用于操作
var_dump($row);
- mysql_select_db
4 fetch函数
mysql_fetch_row
$query=mysql_query('select * from 数据表');
mysql_fetch_row($query);
//返回的数组是一个一维索引数组,每一个下标与数据库里字段的排序xiang
- 自己将id设定为主键
- SQL语句修改
- ALTER TABLE test ADD PRIMARY KEY (id);
- 设定AUTO_INCREMENT
- ALTER INT UNSIGNED AUTO_INCREMENT;
<?php
header("Content-type:text/html;charset=utf-8");
$con= mysql_connect("localhost","root","密码");
mysql_select_db('info');
mysql_query('set names utf8');//告诉数据库设定输入输出模式,若不设定,会
出现乱码
mysql_query('insert into test(name) values("苹果")');
mysql_query('insert into test(name) values("香蕉")');
mysql_query('insert into test(name) values("桂圆")');
$query=mysql_query('select * from test');
while($row=mysql_fetch_row($query)){
print_r($row);
}
mysql_close($con);
?>
- 插入成功
//网页源文件
Array
(
[0] => 23
[1] => 苹果
)
Array
(
[0] => 24
[1] => 香蕉
)
Array
(
[0] => 25
[1] => 桂圆
)
//1.也可以输出同样的效果
//2.当rown的时候,返回为空
$row1=mysql_fetch_row($query);
print_r(row1);
$row2=mysql_fetch_row($query);
print_r(row2);
$row3=mysql_fetch_row($query);
print_r(row3);
...
$query=mysql_query('select name,num from test');
while($row=mysql_fetch_row($query)){
echo $row[0].$row[1].'个<br/>';
}
mysql_fetch_array
- mysql_fetch_row取一条数据产生一个索引数组
- mysql_fetch_array 默认状态下取一条数据产生一个索引数组和一个关联数组
mysql_fetch_array($query,MYSQL_ASSOC);// 关联数组
//索引数组
mysql_fetch_row($query,MYSQL_ASSOC);
mysql_fetch_array($query,MYSQL_NUM);
//关联+索引数组
mysql_fetch_array($array,MYSQL_BOTH);
mysql_fetch_array($array);
//测试代码
<?php
header("Content-type:text/html;charset=utf-8");
//数据库的登陆,选择,字符设定
$con= mysql_connect("localhost","root","密码");
mysql_select_db('info');
mysql_query('set names utf8');//告诉数据库设定输入输出模式,若不设定,会
出现乱码
$query=mysql_query('select * from test');
$fetch=mysql_fetch_array($query);
print_r($fetch);
mysql_close($con);
?>
//1.测试结果网页源代码
Array
(
[0] => 23
[id] => 23
[1] => 苹果
[name] => 苹果
[2] => 3
[num] => 3
)
mysql_fetch_assoc
- 关联数组形式展现
mysql_fetch_object
- 输出结果是一个对象
$query=mysql_query('select * from tb_name');
$arr=mysql_fetch_object($query);
print_r($arr);
//测试结果网页源代码文件
stdClass Object
(
[id] => 23
[name] => 苹果
[num] => 3
)
//单独查看对象中的一个元素
echo $arr->name;
//查看全部资源
while($arr=mysql_fetch_object($query))
{
echo $arr->name;
echo '<br/>';
}
mysql_num_rows
- 结果集的行数
//1.有结果集并且行数不为零
if($query&&mysql_num_rows($query)){}
mysql_result
- 返回结果集中一个字段的值
//1.节约资源的做法
$query=mysql_query('select count(*) from tb_name');
$query=mysql_query('select count(*) from tb_name');//count(*)结果集为一个字段
//1.第一个参数为结果集地址,行号(从0开始),字段名(偏移量)
mysql_result($query,0);
mysql_affected_rows
- 受影响的记录行数(记录前一次操作所影响的行数)
- 参数为连接标识符
查询分页数据
关闭MySQL连接
mysql_close($your_link);
性能要求比较高的情况下,进行完数据库操作后,尽快关闭数据库连接,节省资源,提高性能