PHP操作MySQL数据库的常用办法
发布时间:2022-02-17 04:53:55 所属栏目:PHP教程 来源:互联网
导读:在php中操作mysql数据库的方法有常用的三种,我们使用最多的估计是mysql或mysqli当然还有一个pdo_mysql了,下面整理了一些例子给各位参考. 一.mysql数据库,代码如下: $conn=mysql_connect(localhost, root, 123456) or die(数据库连接失败); mysql_select_db(t
在php中操作mysql数据库的方法有常用的三种,我们使用最多的估计是mysql或mysqli当然还有一个pdo_mysql了,下面整理了一些例子给各位参考. 一.mysql数据库,代码如下: $conn=mysql_connect("localhost", "root", "123456") or die("数据库连接失败"); mysql_select_db("test") or die("选择数据库失败");; $sql="select * from user"; $data=mysql_query($sql); echo '<table border="1" align="center" width="800">' while($row=mysql_fetch_assoc($result)){ echo '<tr>';//开源代码Cuoxin.com foreach($row as $col){ echo '<td>'.$col.'</td>'; } echo '</tr>'; }; echo '</table>'; mysql_close(); 补充,代码如下: // 从表中提取信息的sql语句 $strsql="SELECT * FROM `gbook`"; // 执行sql查询 $result=mysql_db_query($mysql_database, $strsql, $conn); // 获取查询结果 $row=mysql_fetch_row($result); echo '<font face="verdana">'; echo '<table border="1" cellpadding="1" cellspacing="2">'; // 显示字段名称 echo "</b><tr></b>"; for ($i=0; $i<mysql_num_fields($result); $i++) { echo '<td bgcolor="#000F00"><b>'. mysql_field_name($result, $i); echo "</b></td></b>"; } echo "</tr></b>"; // 定位到第一条记录 mysql_data_seek($result, 0); // 循环取出记录 echo "</table></b>"; echo "</font>"; // 释放资源 mysql_free_result($result); // 关闭连接 mysql_close($conn); 二.pdo_mysql(推荐),连接代码如下: $dsn = "mysql:host=localhost;dbname=test"; $username = 'root'; $password = '123456'; $options = array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8', ); $pdo = new PDO($dsn, $username, $password, $options); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 增: 方法1:绑定关联数组 $str=$pdo->prepare("INSERT INTO `user` (`username`, `password`) VALUES (:username,:password)"); $str->execute(array(":username"=>"test", ":password"=>"passwd")); 方法2:绑定索引数组 $str=$pdo->prepare("INSERT INTO `user` (`username`, `password`) VALUES (?,?)");//开源代码Cuoxin.com $str->execute(array("test", "passwd")); //删: $str=$pdo->prepare("delete from user where id > 3"); $str->execute(); //改: $str=$pdo->prepare("UPDATE `user` SET username=:username,password=:password where id=:id"); $str->execute(array(":username"=>"test", ":password"=>"passwd", ":id"=>"3")); 查: //方法1: 单个取出,循环遍历,返回到数组 $str=$pdo->prepare("select * from user where id > :id order by id"); $str->execute(array(":id"=>2)); $str->setFetchMode(PDO::FETCH_ASSOC); //共三种:1.PDO::FETCH_BOTH(默认) 2.FETCH_ASSOC 3.FTECH_NUM while($data=$str->fetch()){ print_r($data); echo '<br>'; } //方法2: 全部取出,返回到二维数组 $str=$pdo->prepare("select * from user order by fid"); $str->execute(); $data=$str->fetchAll(PDO::FETCH_NUM); print_r($data); //方法3:单个取出,循环遍历,绑定字段名到变量 $str=$pdo->prepare("select fid,username,password from user order by id"); $str->execute(); $str->bindColumn("id",$id); $str->bindColumn("username",$username); $str->bindColumn(3,$password); while($str->fetch()){ echo "$id | $username | $password <br>"; } echo "总记录数:".$str->rowCount()."<br>"; echo "总字段数:".$str->columnCount()."<br>"; 二.mysqli,代码如下: 用mysqli链接MYSQL数据库 requery_once("config.ini.php"); $mysqliObj = new mysqli($dbhost,$dbuser,$dbpwd,$dbname); if(mysqli_connect_errno()){ echo "连接失败".mysqli_connect_error(); exit(); } $mysqliObj->query("set name $charName"); 其他操作: //查询 //----------------------------------------------------- //(单条查询) $sql = "drop table if exists user;"; $mysqliObj->query($sql); //(多条查询) $musqliObj->multip_query($sql) //返回执行$sql受影响的行数() ---------------------------------------------------- if($mysqliObj->query($sql)) echo $mysqliObj->affected_rows; //insert 插入时,返回插入的id (很有用) --------------------------------------------------- $num = $mysqliObj->insert_id; 三种处理查询结果,代码如下: $sql = "select * from user"; $result = $mysqli->query($sql); //(1)fetch_row() 返回索引数组 fetch_row() while(list($id,$name,$pwd)=$result->fetch_row()){ echo "id: ".$id." name:".$name." pwd:".$pwd."<br>"; } //(2)fetch_assoc() 返回关联数组 fetch_assoc() while ($row = $result->fetch_assoc()){ echo "id:".$row["userId"]." name:".$row["userName"]." pwd:".$row["password"]."<br>"; } //(3)fetch_object()返回对象 while($row = $result->fetch_object()){ echo "id:".$row->userId." name:".$row->uerName." pwd:".$row->password."<br>"; } (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |