首页 > 代码库 > mysql操作封装

mysql操作封装

<?php
//连接数据库
function connect(){
  $link = mysql_connect(DB_HOST,DB_USER,DB_PWD)or die("数据库连接失败Error:".mysql_errno().":".mysql_error());//mysql_errno()指mysql数据操作的错误信息的数字编码,
  //mysql_error()指mysql数据操作的错误信息
  mysql_set_charset(DB_CHARSET);
  mysql_select_db(DB_DBNAME)or die("指定数据库打开失败");
  return $link;
}

//记录插入操作
function insert($table,$array){
  $keys = join(",",array_keys($array));//array_keys()返回数组中的键名,返回值是一个包含所有键名的数组
  $values = "‘".join("‘,‘",array_values($array))."‘";//array_values()返回数组中的键值,返回值是一个包含所有键值的索引数组
  $sql = "insert{$table}($keys)values($values)";
  mysql_query($sql);
  return mysql_insert_id();//mysql_insert_id()返回上一步insert操作产生的id
}

//记录更新操作
function update($table,$array,$where=null){
  foreach($array as $key=>$val){
    if($str==null){
      $sep="";
    }else{
      $sep=",";
    }
    $str.=$sep.$key."=‘".$val."‘";
  }
  $sql="update {$table} set {$str} ".($where==null?null:"where".$where);
  mysql_query($sql);
  return mysql_affected_rows();//mysql_affected_rows()返回上一次mysql操作受影响的记录条数
}

//记录删除操作
function delete($table,$where=null){
  $where=$where==null?null:" where ".$where;
  $sql = "delete from {$table} {$where}";
  mysql_query($sql);
  return mysql_affected_rows();
}

//查询单条记录
function fetchOne($sql,$result_type=MYSQL_ASSOC){
  $result=mysql_query($sql);
  $row = mysql_fetch_array($result,$result_type);//mysql_fetch_array()从结果集中取得一行作为关联数组,或数字数组,MYSQL_ASSOC是关联数组,MYSQL_NUM是索引数组,MYSQL_BOTH都包括
  return $row;
}

//查询多条记录
function fetchAll($sql,$result_type=MYSQL_ASSOC){
  $result=mysql_query($sql);
  while(@$row=mysql_fetch_array($result,$result_type)){
    $rows[]=$row;
  }
  return $rows;
}

//得到结果集中记录的条数
function getResultNum($sql){
  $result=mysql_query($sql);
  return mysql_num_rows($result);//mysql_num_rows()取得结果集中行的数目
}

mysql操作封装