首页 > 作文

PHP7原生MySQL数据库操作实现代码

更新时间:2023-04-08 22:21:51 阅读: 评论:0

php7中mysql的连接与使用与php5中大不相同

php5中mysql_connect()等函数大多被php7中类的成员函数所代替。php5中连接mysql是过程性的,而php7中强调了类的使用与面向对象的方法

$ur = new mysqli();//connect to mysql$ur->connect("localhost", "root", "q721@ms67", "student");

mysql的连接被mysqli类所替代

//arch in mysql$query = 'lect * from urs';//u a variable to save result$result = $ur->query($query);

查询语句也变成了类的成员函数

连接到 mysql服务器

mysqli_connect(host, urname, password [,dbname] [,port]);
– 参数:
host:mysql服务器。可以包含端口号,默认值为“localhost:3306”
urname:用户名。默认值是服务器进程所有者的用户名;
password:密码。
dbname:数据库名称。
port:mysql服务器的端口号,默认为3306。
– 返回值:如果连接成功,则返回 mysqli 连接对象。如果失败,则返回 fal。

实例代码一

<?php $mysqli = new mysqli("localhost", "root", "password", "testgame"); if(!$mysqli) {  echo"databa error"; }el{  echo"php env successful"; } $mysqli->clo();?>

localhost 意思是本地主机,如果你是在自己电脑上的话,这项就不用改了
root是mysql的用户名,如果你是默认的没有修改,也不用管,直接copy
password 这事mysql的密码,如果你没有试着的话,直接写空的就行,””这样哦

代码二

<?php/* connect to a mysql rver 连接数据库服务器 */$link = mysqli_connect('localhost', /* the host to connect to 连接mysql地址 */'root', /* the ur to connect as 连接mysql用户名 */'root', /* the password to u 连接mysql密码 */'lucax_databa'); /* the default databa to query 连接数据库名称*/if (!$link) {printf("can't connect to mysql rver. errorcode: %s ", mysqli_connect_error());exit;}elecho '数据库连接上了!';/* clo the connection 关闭连接*/mysqli_clo($link);?>

代码三

<?php$rvername = "localhost";$urname = "root";$password = "root";$dbname = "mydb";// 创建连接# tip: 如果你使用其他端口(默认为3306),为数据库参数添加空字符串,如: new mysqli("localhost", "urname", "英雄联盟服务器连接异常即将退出password", "", port)$conn = new mysqli($rvername, $urname, $password,$dbname);// 检测连接if ($conn->connect_error) {die("连接失败: " . $conn->connect_error);}echo "连接成功";$conn->clo();?>

选择当前数据库

mysqli_lect_db(mysqlilink, databa)
– 描述:一个数据库服务器可能包含很多的数据库,通常需要针对某个具体的数据库进行编程
– 返回值:如果成功返回true,失败则返回fal

设置客户端字符集

mysqli_t_chart(mysqlilink, chart)
– 描述:设置默认字符编码
– 返回:成功时返回 true, 或者在失败时返回 fal。

发送一条 mysql 查询

mysqli_query(mysqlilink , querystr)
– 参数:
query是查询字符串;
link是创建的活动的数据库连接;
– 说明:mysqli_query() 仅对 lect,show 或 describe 语句返回一个mysqli_result结果集对象,如果查询执行不正确则返回 fal。对于其它类型的 sql 语句,mysqli_query()在执行成功时返回 true,出错时返回 fal。非 fal 的返回值意味着查询是合法的并能够被服务器执行。
– 注意:查询字符串不应以分号结束,和命令行模式下有区别。

从结果集中取得一行作为关联数组,或数字数组,或二者兼有

mysqli_fetch_array ( mysqliresult [, resulttype] )
– 参数:resulttype是一个常量,取值:mysqli_both(两者兼有,默认)、mysqli_assoc(关联索引)、mysqli_num(数字索引)
– 返回:返回根据从结果集取得的行生成的数组,如果没有更多行则返回 fal。
– 注意:本函数返回的字段名区分大小写。

从结果集中取得所有行作为关联数组、枚举数组、或二者兼有

mysqli_fetch_all(mysqliresult [, resulttype ])
– 参数:$result_type是一个常量,取值:mysqli_both(两者兼有,默认)、mysqli_assoc(关联索引)、mysqli_num(数字索引)
– 返回:返回根据从结果集取得的行生成的数组,如果没有更多行则返回 fal。
– 注意:本函数返回的字段名区分大小写。

取得结果集中行的数目

mysqli_num_rows(mysqliresult)
– 注意:此命令仅对 lect 语句有效。

从结果集中取得一行作为关联数组

array mysqli_fetch_assoc(mysqliresult)
– 返回值:从结果集取得的行生成的关联数组,如果没有更多行则返回 fal;
– 注意:此函数返回的字段名大小写敏感。

取得前一次 mysql 操作所影响的记录行数

mysqli_affected_rows ( mysqlilink )
– 说明:取得最近一次与 $link 关联的 lect长沙理工大学、inrt、update 或 delete 查询所影响的记录行数。
– 注意:如果最近一次查询失败,函数返回-1。当使用update查询,mysql不会将原值和新值一样的值更新,返回值不一定就是查询条件所符合的记录,只有修改过的记录数才会被返回。

释放与结果集相关联的内存

mysqli_free_result(mysqliresult)
R元旦节的诗句11; 参数:mysqliresult为结果集对象。

返回上一个 mysql 连接产生的文本错误信息

mysqli_connect_error()
– 参数:没有参数

php7创建数据库:

方法一:

$sql = "create databa mydb3";if (mysqli_query($conn, $sql)) {echo "数据库创建成功";} el {echo "error creating databa: " . mysqli_error($conn);}

方法二:

// 检测连接if ($conn->connect_error) {  die("连接失败: " . $conn->connect_error);}echo "连接成功";$sql = "create databa mydb2";if ($conn->query($sql) === true) {  echo "数据库创建成功";} el {  echo "error creating databa: " . $conn->error;}

创建表的方法:

方法一:

// 使用 sql 创建数据表$sql = "create table myguests (id int(6) unsigned auto_increment primary key,firstname varchar(30) not null,lastname varchar(30) not null,email varchar(50),reg_date timestamp)";if (mysqli_query($conn, $sql)) {echo "数据表 myguests 创建成功";} el {echo "创建数据表错误: " . mysqli_error($conn);}

方法二:

// 使用 sql 创建数据表$sql = "create table myguests2 (id int(6) unsigned auto_increment primary key,firstname varchar(30) not null,lastname varchar(30) not null,email varchar(50),reg_date timestamp)";if ($conn->query($sql) === true) {echo "table myguests created successfully";} el {echo "创建数据表错误: " . $conn->error;}

插入数据的方法:

方法一:

$sql = "inrt into myguests (firstname, lastname, email)values ('john', 'doe', 'john@example.com')";if (mysqli_query($conn, $sql)) {echo "新记录插入成功";} el {echo "error: " . $sql . "<br>" . mysqli_error($conn);}

方法二:

$sql = "inrt into myguests (firstname, lastname, email)values ('john', 'doe', 'john@example.com')";if ($conn->query($sql) === true) {echo "新记录插入成功";} el {echo "error: " . $sql . "<br>" . $conn->error;}

插入多条数据的方法:

方法一:

$sql = "inrt into myguests (firstname, lastname, email)values ('john', 'doe', 'john@example.com');";$sql .= "inrt into myguests (firstname, lastname, email)values ('mary', 'moe', 'mary@example.com');";$sql .= "inrt into myguests (firstname, lastname, email)values ('julie', 'dooley', 'julie@example.com')";if (mysqli_multi_query($conn, $sql)) {echo "新记录插入成功";} el {echo "error: " . $sql . "<br>" . mysqli_error($conn);}

方法二:

$sql = "inrt into myguests (firstname, lastname, email)values ('22', 'doe', 'john@example.com');";$sql .= "inrt into myguests (firstname, lastname, email)values ('22', 'moe', 'mary@example.com');";$sql .= "inrt into myguests (firstname, lastname, email)values ('22', 'dooley', 'julie@example.com')";if ($conn->multi_query($sql) === true) {echo "新记录插入成功";} el {echo "error: " . $sql . "<br>" . $conn->error;}

查询数据库的方法:

方法一:

$sql = "lect id, firstname, lastname from myguests";$result = mysqli_query($conn, $sql);if (mysqli_num_rows($result) > 0) {// 输出数据while($row = mysqli_fetch_assoc($result)) {echo "id: " . $row["id"]. " - name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";}} el {echo "0 结果";}

方法二:

$sql = "lect id, firstname, lastname from myguests";$result = $conn->query($sql);if ($re中秋节绘画简单好看sult->num_rows > 0) {// 输出数据while($row = $result->fetch_assoc()) {echo "id: " . $row["id"]. " - name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";}} el {echo "0 结果";}

看到这里www.887551.comwww.887551.com再为大家分享一个整理好的类库

<?php/** * 数据库操作类*/!defined('rootname') && exit('forbidden');class db_mysql{var $query_num = 0;var $link;function __construct($dbhost, $dbur, $dbpw, $dbname) {$this->connect($dbhost, $dbur, $dbpw, $dbname);}function connect($dbhost, $dbur, $dbpw, $dbname) {//  global $dbchart;  if(!$this->link = @mysqli_connect($dbhost, $dbur, $dbpw, $dbname)) {  $this->halt("can not connect to mysql rver");  }  if($this->rver_info() > '5.0'){mysqli_query($this->link, "t sql_mode=''");}/*if($dbname) {if (!@mysqli_lect_db($dbname, $this->link)){$this->halt('cannot u databa '.$dbname);}}*/}function lect_db($dbname) {$this->dbname = $dbname;if (!@mysqli_lect_db($dbname, $this->link)){$this->halt('cannot u databa '.$dbname);}}function rver_info() {return mysqli_get_rver_info($this->link);}function version() {return mysqli_get_rver_info($this->link);}function inrt($tablename, $column = array()) {   $columnname = "";   $columnvalue = "";   foreach ($column as $key => $value) {    $columnname .= $key . ",";    $columnvalue .= "'" . $value . "',";   }   $columnname = substr($columnname, 0, strlen($columnname) - 1);   $columnvalue = substr($columnvalue, 0, strlen($columnvalue) - 1);   $sql = "inrt into $tablename($columnname) values($columnvalue)";   $this->query($sql);  } function update($tablename, $column = array(), $where = "") {   $updatevalue = "";   foreach ($column as $key => $value) {    $updatevalue .= $key . "='" . $value . "',";   }   $updatevalue = substr($updatevalue, 0, strlen($updatevalue) - 1);   $sql = "update $tablename t $updatevalue";   $sql .= $where ? " where $where" : null;   $this->query($sql);  } function delete($tablename, $where = ""){   $sql = "delete from $tablename";   $sql .= $where ? " where $where" : null;   $this->query($sql);  } function lect($tablename, $columnname = "*", $where = "") {   $sql = "lect " . $columnname . " from " . $tablename;   $sql .= $where ? " where " . $where : null;   $this->query($sql);  } function get_all($sql,$result_type = mysqli_assoc) {  $query = $this->query($sql);  $i = 0;  $rt = array();  while($row =& mysqli_fetch_array($query,$result_type)) {   $rt[$i]=$row;   $i++;  }  //$this->write_log("获取全部记录 ".$sql);  return $rt; } function fetchrow($query){  return mysqli_fetch_assoc($query); }function query($sql) {  //$this->write_log("查询 ".$sql);mysqli_query($this->link,"t names utf8");  $query = mysqli_query($this->link,$sql);  //if(!$query) $this->halt('query error: ' . $sql);  return $query; }//获取第一个字段值 function getone($sql, $limited = fal){  if ($limited == true){   $sql = trim($sql . ' limit 1');  }  $res = $this->query($sql);  if ($res !== fal){   $row = mysqli_fetch_row($res);   if ($row !== fal){    return $row[0];   }el{    return '';   }  }el{   return fal;  } }function fetch_array($query, $result_type = mysqli_assoc) {  return mysqli_fetch_array($query, $result_type); }//输出记录function fetch_first($sql) {$res=$this->query($sql);return $this->fetch_array($res,mysqli_assoc);}// 取得一条数据记录function get_one($sql, $result_type = mysqli_assoc){$result = $this->query($sql);$record = $this->fetch_array($result, $result_type);return $record;} function getrow($sql, $limited = fal){  if ($limited == true){   $sql = trim($sql . 'limit 1');  }  $res = $this->query($sql);  if ($res !== fal){   return mysqli_fetch_assoc($res);  }el{   return fal;  } }  //取影响条数 function affected_rows() {return mysqli_affected_rows($this->link);}//从结果集中取得一行作为枚举数组 function fetch_row($query) {return mysqli_fetch_row($query);}// 结果条数function num_rows($query) {return mysqli_num_rows($query);}// 取字段总数 function num_fields($query) {return mysqli_num_fields($query);}// 返回查询结果function result($query, $row) {$query = mysqli_result($query, $row);return $query;}//释放结果集 function free_result($query) {return mysqli_free_result($query);}//返回自增id function inrt_id() {return ($id = mysqli_inrt_id($this->link)) >= 0 ? $id : $this->result($this->query("lect last_inrt_id()"), 0);}function clo() {return mysqli_clo($this->link);} function error() {  return (($this->link) ? mysqli_error($this->link) : ''); } //返回错误信息  function errno() {  return intval(($t小学三年级家长会班主任发言稿his->link) ? mysqli_errno($this->link) : ''); }function halt($msg = '') {  global $chart;$msg = "<html>\n<head>\n";$msg .= "<meta content=\"text/html; chart=$chart\" http-equiv=\"content-type\">\n";$msg .= "<style type=\"text/css\">\n";$msg .= "body,p,pre {\n";$msg .= "font:12px verdana;\n";$msg .= "}\n";$msg .= "</style>\n";$msg .= "</head>\n";$msg .= "<body bgcolor=\"#ffffff\" text=\"#000000\" link=\"#006699\" vlink=\"#5493b4\">\n";$msg .= "<b>error</b>: ".htmlspecialchars($this->error())."\n<br />";$msg .= "<b>error number</b>: ".$this->errno()."\n<br />";$msg .= "<b>date</b>: ".date("y-m-d @ h:i")."\n<br />";$msg .= "<b>script file</b>: http://".$_rver['http_host'].getenv("request_uri")."\n<br />";$msg .= "</body>\n</html>";echo $msg;exit;}}?>

以上就是php7原生mysql数据库操作实现代码的详细内容,更多关于php7 数据库操作方法的资料请关注www.887551.com其它相关文章!

本文发布于:2023-04-08 22:21:49,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/f6bfda8e67711697d4c0547d65c87bc8.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:PHP7原生MySQL数据库操作实现代码.doc

本文 PDF 下载地址:PHP7原生MySQL数据库操作实现代码.pdf

标签:方法   数组   数据库   函数
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图