mysql_connect()已经被弃用了,使用时会出现如下错误 Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in 下面介绍php mysqli query 链接数据库和查询实例
$mysql_server_name="localhost"; //数据库服务器名称 $mysql_username="root"; // 连接数据库用户名 $mysql_password="123456"; // 连接数据库密码 $mysql_database="wqdb"; // 数据库的名字 // 连接服务器,并选择一个数据库 $mysqliConn = new mysqli($mysql_server_name,$mysql_username,$mysql_password,$mysql_database); // 与数据库交互 $sql="select * from data_shangpin;"; $result=$mysqliConn->query($sql); while ($row = mysqli_fetch_assoc($result)) { //$row=json_encode($row); var_dump($row); } // 关闭连接 $mysqliConn->close();
query:失败返回false,select成功返回结果集对象,其他返回true 非false,意味着sql执行成功了 无结果集示例
$mysqli = mysqli_init(); $mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 2);//设置超时时间 $mysqli->real_connect('127.0.0.1', 'root', '', 'test'); $sql = "insert into limove(`name`, `order`) values('aa', 11)"; $rst = $mysqli->query($sql); $sql = "delete from limove where id = 221"; $rst = $mysqli->query($sql); if($rst === false) { ee($mysqli->errno); ee($mysqli->error); } #影响条数 ee($mysqli->affected_rows); #插入的id ee($mysqli->insert_id); ee($mysqli);
有结果集
$mysqli = mysqli_init(); $mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 2);//设置超时时间 $mysqli->real_connect('127.0.0.1', 'root', '', 'test'); $sql = "select * from limove as limove_as"; $result = $mysqli->query($sql); if($result === false) { ee($mysqli->errno); ee($mysqli->error); } #行数 ee($result->num_rows); #列数 ee($result->field_count); #字段个数 ee($result->field_count); #获取所有字段的信息 $field_arr = $result->fetch_fields(); #移动字段的指针 // $result->field_seek(1); #依次获取字段的信息 while($field = $result->fetch_field()) { ee($field); } #移动记录指针 $result->data_seek(1); #一次获取所有数据 $data = $result->fetch_all(MYSQLI_ASSOC); #关联数组方式获取结果集 $data = array(); $result->data_seek(0); #重置指针到起始 while($row = $result->fetch_assoc()) { $data[] = $row; } ee($data); $result->free(); $mysqli->close();