PHP MYSQL
链接数据库
关闭数据库
<?php header("Content-type:text/html;charset=utf-8"); if($con = mysqli_connect('localhost','root','root')){ // 当链接成功的时候,返回mysql链接表示符。 链接失败返回false echo "链接成功"; }else{ echo "链接失败"; } mysqli_close($con); ?>
选择数据库
if (mysqli_select_db($con, "test")){ echo "选择数据库成功"; }else{ echo "选择数据库失败"; }
mysqli_query执行sql语句
执行一条mysql语句
$result = mysqli_query($con, "INSERT INTO test(name) VALUES('abc');"); if ($result){ echo "插入成功"; }else { echo mysqli_errno(); //返回错误代码 echo "插入失败"; }
mysqli_fetch_row
$query = mysqli_query($con, ('SELECT * FROM test')); // while ($row = mysqli_fetch_row($query)){ // print_r($row); // } $row1 = mysqli_fetch_row($query); print_r($row1); $row2 = mysqli_fetch_row($query); print_r($row2);
以下设置字符集为utf8编码的操作正确的是?
mysql_query(‘set names utf8’);
mysqli_fetch_array 获取和显示数据
mysqli_fetch_row和mysqli_fetch_array 的区别:
1、mysqli_fetch_row 取一条数据产生一个索引数组
2、mysqli_fetch_array 默认状态下取一条数据产生一个索引数组和一个关联数组
mysqli_fetch_array 取值
$arr = mysqli_fetch_array($query); echo $arr['name']
mysqli_fetch_array 的第二个参数
1、MYSQLI_ASSOC - 关联数组
2、MYSQLI_NUM - 索引数组
3、MYSQLI_BOTH - 关联数组+索引数组
关联数组
mysqli_fetch_array($query,MYSQLI_ASSOC);
索引数组
mysqli_fetch_row($query); mysqli_fetch_array($query,MYSQLI_NUM);
关联+索引数组
mysqli_fetch_array($query); mysqli_fetch_array($query,MYSQLI_BOTH);
mysqli_fetch_assoc 获取和显示数据
mysqli_fetch_assoc($query);
mysqli_fetch_object 获取和显示数据
(它的输出结果是一个对象)
$query = mysqli_query($con, ('SELECT * FROM test')); $arr = mysqli_fetch_object($query); $arr->name; // 取name值 echo $arr->name;
mysqli_num_rows 结果集中行的数目
(它的输出结果是一个数字)
$query = mysqli_query($con, ('SELECT * FROM test')); echo mysqli_num_rows($query);
还可以进行结果集的判断,结果集和结果不等于0,执行数据。
以免数据为空的时候还在继续执行数据输出。
count()语法:
(1)count(*)---包括所有列,返回表中的记录数,相当于统计表的行数,在统计结果的时候,不会忽略列值为NULL的记录。
(2)count(1)---忽略所有列,1表示一个固定值,也可以用count(2)、count(3)代替,在统计结果的时候,不会忽略列值为NULL的记录。
(3)count(列名)---只包括列名指定列,返回指定列的记录数,在统计结果的时候,会忽略列值为NULL的记录(不包括空字符串和0),即列值为NULL的记录不统计在内。
(4)count(distinct 列名)---只包括列名指定列,返回指定列的不同值的记录数,在统计结果的时候,在统计结果的时候,会忽略列值为NULL的记录(不包括空字符串和0),即列值为NULL的记录不统计在内。
mysqli_affected_rows 受影响的纪录行数
返回前一次受Insert,updata,delete影响的纪录行数