1.使用数据库:
连接数据库:
$con = mysql_connect($hostname, $user, $pass);
连接成功返回一个连接标识符,否则返回false
选择数据库:
mysql_select_db('info'); //返回值为布尔类型
设置数据库字符集:
mysql_query('set names utf8');
断开数据库链接:
mysql_close($con);
返回上一个错误信息:
mysql_error();
2.执行sql语句:
$query = mysql_query($sql);
(1) sql语句为增删改,insert, delete, update
mysql_query()返回值为布尔类型
当执行insert语句后,可以通过php的mysql_insert_id()来获取自增的id,此id可以用来判断是否成功插入,或作为关联id用作其它数据库操作。
(2)sql语句为查询时,select
查询成功时,返回结果集的资源标识符(地址),否则返回false
3.对结果集进行处理:
(1) mysql_fetch_row($query);
mysql_fetch_row每执行一次,都从资源也就是结果集里依次取一条数据,以数组的形式返回出来,当前一次已经取到最后一条数据的时候,这一次返回空结果。
返回的数组是一个一维索引数组,每一个下标与数据库里字段的排序相对应。
(2)mysql_fetch_assoc($query)
mysql_fetch_assoc每执行一次,都从资源也就是结果集里依次取一条数据,以数组的形式返回出来,当前一次已经取到最后一条数据的时候,这一次返回空结果。
返回的数组是一个一维关联数组,每一个键值与数据库里字段相对应。
(3)mysql_fetch_array($query,[param2])
可选参数param2: MYSQL_ROW:相当于mysql_fetch_row($query);
MYSQL_ASSOC:相当于mysql_fetch_assoc($query);
MYSQL_BOTH(默认):
mysql_fetch_array($query)每执行一次,都从资源也就是结果集里依次取一条数据,以数组的形式返回出来,当前一次已经取到最后一条数据的时候,这一次返回空结果。
返回的数组是一个一维索引数组和一维关联数组。
(4) mysql_fetch_object($query)
每执行一次,都从资源也就是结果集里依次取一条数据,以对象形式返回,对象中的属性为字段名称,值对应相应字段值
$object = mysql_fetch_object($query);
echo $object->name;
4.其他常用的:
(1)mysql_num_rows($query); 获取结果集中记录的条数。
可用来判断结果集是否为空。
if(mysql_num_rows($query){
}
(2)mysql_result() //获取指定行指定字段的值
mysql_result($query,1,1);//获取第2行第2个字段
mysql_result($query,1,'name') //获取第2行name字段
(3)mysql_affected_rows(); //记录上一次执行语句(insert, delete, update)后,受影响的行数
$con=mysql_connect($host, $user, $pass);
mysql_affected_rows($con);