PHP_MySql扩展主要操作

MySql扩展,是PHP利用MYSQL服务器提供的接口,封装出来的一系列操作MYSQL数据库的函数集合。

1.开启拓展在php.ini中,找到 extension_dir 这一项,开启扩展。

2.可在phpinfo里,查看mysql扩展有没有开启成功


基本操作

mysql_connect        //接数据库
mysql_set_charset     //设置字符集
mysql_select_db        //择数据库


#连接数据库
#ip地址,端口号,账号,密码
#localhost为本地,如果端口号是3306可省略
$link = mysql_connect('localhost','root','123456');
var_dump($link);
#设置字符集
mysql_set_charset('utf8',$link);
#选择数据库,'test'为数据库名
mysql_select_db('test',$link);

数据库连接成功后得到一个资源类型的值。我们还可以通过执行SQL语句来设置字符集和选择数据库。

mysql_query  //这个函数用于执行SQL语句,语法跟直接操作mysql语句一样
mysql_query(“set names utf8”);
mysql_query(“use test”);

增删改操作
增删改操作都是通过mysql_query函数来执行SQL语句完成,通过将一条sql语句达成操作,如:

$add = 'insert into 表名(字段) values("内容")';
$update = 'update 表名 set [修改内容]';
$del = 'delete from 表名 [条件]';

$res = mysql_query($add);
$res = mysql_query($update);
$res = mysql_query($del);

在sql操作中怎么写,在php里就怎么写,mysql_query() 的作用相当于在mysql里直接执行该语句。

查询操作

通过mysql_query函数执行查询SQL语句,会得到一个资源型的结果集,但这个结果几不可以直接拿来用,我们需要确切的数据。

我们需要通过mysql_fetch_assoc函等数来对结果集进行遍历,得到我们想要的数据。

mysql_fetch_assoc

1.执行mysql_fetch_assoc函数将会获得关联数组,这个数据对应着查询出来的一条记录;
2.每次执行mysql_fetch_assoc函数都将获得一条新的记录,然后指针下移;
3.当获取到最后一条记录后,再执行mysql_fetch_assoc函数,指针下移将无法获得数据,此时返回false;

根据第2和第3两点特性,我们可以通过while循环将数据统一保存到一个新的数组变量中,如:

#写一条查询语句,用sql_query()执行
$sql = 'select 字段 from 表名 where [查询条件]';
$result = mysql_query($sql);

#设置一个空数组
$rows = array();
# mysql_fetch_assoc 每次获取一条记录,将结果放到 $row 中
while( $row = mysql_fetch_assoc($result) ){
    #用while循环将每次得到的结果放入数组元素
    $rows[] = $row;
}
var_dump($rows);

我们也可以通过mysql_fetch_row函数解析结果集,得到索引数组(数字下表)
通过mysql_fetch_array函数解析结果集,得到的索引数组记录和关联数组都包含

说明:

1)三个函数都可以解析结果集,并且每次都是获取一条新的记录;

2)三个函数从效果上来看是一样的,但是返回的结果中,元素的形式(KEY值或元素的个数)不同

3)我们不仅有select语句类型查询操作,我们还有show、desc之类的查询操作,同样也可以通过解析结果集的方式获得查询出的数据。

 MYSQL扩展中的相关功能函数

mysql_field_name    //获取结果集中指定位置字段的字段名(下标从0开始)
mysql_num_fields    //获取结果集中字段个数(有几个字段意味着有几个列)
mysql_errno      //返回错误信息的代号
mysql_error      //返回错误信息的内容
mysql_insert_id     //获取最新插入数据的ID值
原文地址:https://www.cnblogs.com/bk233/p/7357971.html