PHP操作数据库

一.PHP连接到MySQL

//   //比较规范的写法是地址,登录名,密码这样写,比较安全
  define("DB_HOST", 'localhost');
  define('DB_USER', 'root');
  define("DB_PWD", 'kang123456');
  define('DB_NAME', 'school');
  //1 连接数据库
  $conn = @mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('数据库连接失败'.mysql_error());
  //2 选择指定数据库,第二个参数资源句柄可以不放;选择字符集
  mysql_select_db(DB_NAME,$conn) or die('找不到数据库,错误:'.mysql_error());
  mysql_query('SET NAMES UTF8') or die('字符集设置错误'.mysql_error());//注意此处不是utf-8
  //3 获取记录集:从数据库里选一张表,然后把这个表的数据提出来
  $query = "select *from grade";
  $result = @mysql_query($query) or die('sql错误:'.mysql_error());  //返回资源句柄类型,result就是记录集,可以加一个错误抑制符号@
  //4 将记录集中的信息显示出来,result就是记录集
  print_r(mysql_fetch_array($result));  //返回的是数组,第二个参数可以按数字下标和字符串下标返回
  //5 释放记录集资源
  mysql_free_result($result);
  6 关闭数据库
  mysql_close();  //关闭成功返回1

二.增删改查

 

  //1 新增数据
  $query = "INSERT INTO grade
      (id,name,email,point,regdate)
      VALUES(5,'小林','hha@dfa.com',45,NOW())";
  @mysql_query($query) or die('查询错误:'.mysql_error());
  
  //2 修改数据
  $query = "update grade set point=222 where id=1";
  @mysql_query($query) or die('查询错误'.mysql_error());

  //3 删除数据
  $query = "delete from grade where id=5";
  mysql_query($query) or die('查询错误:'.mysql_error());
  
  //4 查询数据
  $query = "select *from grade";
  $result = @mysql_query($query) or die("查询错误:".mysql_error());
  
  //5 显示数据
  $query = "select *from grade";
  $result = @mysql_query($query) or die("查询错误:".mysql_error());
  while (!!$row = mysql_fetch_array($result)){ //mysql_fetch_array();赋值一个后会自动往下移动
      echo $row['name'].'--'.$row['point'];  //也可以[数字]
      echo '<br />';
  } 

 

三.其他常用函数

 

mysql_fetch_row()从结果集中取得一行作为枚举数组

 

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

 

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

 

 

 

mysql_fetch_lengths() 取得结果集中每个输出的长度

 

mysql_field_name()  取得结果中指定字段的字段名

 

 

 

mysql_num_rows() 取得结果集中行的数目

 

mysql_num_fields()取得结果集中字段的数目

 

 

 

mysql_get_client_info() 取得 MySQL 客户端信息

 

mysql_get_host_info() 取得 MySQL 主机信息

 

mysql_get_proto_info() 取得 MySQL 协议信息

 

mysql_get_server_info() 取得 MySQL 服务器信息

 

    //mysql_fetch_lengths(): 取得结果集中每个输出的长度
    $query = "select *from grade";
    $result = @mysql_query($query) or die("查询错误:".mysql_error());
    while (!!$row = mysql_fetch_array($result)){ //mysql_fetch_array();赋值一个后会自动往下移动
        echo $row['name'].'--'.$row['point'];  //也可以[数字]
        print_r(mysql_fetch_lengths($result));  //显示的为每个字段的字节数,那么中文的字的个数怎么获得呢
        echo mb_strlen($row['name']);  //获得name的汉字个数
        echo '<br />';
    }
    
    //mysql_field_name():  取得结果中指定字段的字段名
    echo mysql_field_name($result,3);  //第四个字段名
    
    //mysql_num_rows(): 取得结果集中行的数目
    echo mysql_num_rows($result); //5行数据
    //mysql_num_fields():取得结果集中字段的数目
    echo mysql_num_fields($result);  //5列字段

 

posted @ 2016-12-10 23:01  党兴明  阅读(263)  评论(0编辑  收藏  举报