php中的mysql操作详解

jopen 9年前

接下来为大家带来这几天学习php与mysql的一些知识心得,非常实用也非常具体,涵盖了所有常用的php中mysql的内置方法。

数据库连接:

mysql_connect(‘localhost’,’root’,’root’);//三个参数分别为数据库地址、数据库用户名和密码

设定mysql链接标识符$con=mysql_connect(‘localhost’,’root’,’root’)

通过$con关闭数据库:mysql_close($con);

打开某一个数据库:mysql_select_db(“database”)//参数为要选择的数据库名称

 

执行一个sql语句:mysql_query(‘insert into test(name) values(“abc”)’);

通过打印mysql_error();可以方便查看哪里出现了错误

mysql_query(‘set names utf8’);告诉数据库一下的操作均以utf8的编码格式输入和输出

 

mysql_fetch_row()以索引数组形式获取数据

$query = mysql_query(‘select * from test’);//执行成功返回资源标识符(是执行这个语句返回的数据所在的地址)

mysql_fetch_row($query);//返回一个数组,显示查询到的第一条数据的信息

如果想输出查询到的所有数据,则

while($row = mysql_fetch_row($query)){print_r($row);}//循环打印所有查询到的信息(一个数组一个数组的打印)

mysql_fetch_row()每执行一次,都从结果集中一次取一条数据。每个数组的索引值和字段的顺序有关。比如一个数据有namesexpassword等字段,则Array[0]=>显示name的值,以此类推。因此,上面的语句可以直接通过$row[0]取得name等等。

mysql_fetch_array()以混合数组形式获取数据

$arr = mysql_fetch_array($query);这样使用后,$attr[‘name’]直接就能取到name字段的值

$arr = mysql_fetch_array($query,MYSQL_ASSOC);这样就消去了索引值的那些数组,只剩对应字段名称的部分了

MYSQL_ASSOC:返回关联数组(只返回关联字段的数组)

MYSQL_NUM:返回数字数组(就像mysql_fetch_row所返回那样)

MYSQL_BOTH:返回混合数组

 

mysql_fetch_assoc()一关联数组形式获取数组

 

mysql_fetch_object()以对象的形式获取和显示数据

取数值的方法:

$arr = mysql_fetch_object($query);

$arr -> name;即可取到name 的值

 

mysql_num_rows():获取结果集当中行的数目,返回一个数字。可以用于进行数据输出前的判断(用if语句,没有数据的时候就不输出,节省资源)

 

mysql_result();返回结果集中一个字段的值

mysql_result($query,0,1);//第二个参数指明取第几行,第三个三叔指明取第几个字段(偏移量)。这种方式实现了选取某一个字段的值。

 

 

mysql_affected_rows:获取前一次操作受影响的记录的行数(即有几行进行了修改)