结合PHP脚本添加和查询MySQL数据的基本教程

 更新时间:2015年12月16日 14:58:23   投稿:goldensun  
这篇文章主要介绍了结合PHP脚本添加和查询MySQL数据的基本教程,即在PHP程序中使用基本的SELECT FROM和INSERT INTO语句,需要的朋友可以参考下

MySQL Insert Into 添加数据
INSERT INTO
INSERT INTO 语法用于向数据表中添加数据记录。
语法:

INSERT INTO tb_name VALUES (value1, value2,...)

该语法表示向表中所有的字段按顺序都插入数据记录。
但更多情况下是向指定的列添加记录:

INSERT INTO tb_name (column1, column2,...) VALUES (value1, value2,...)

下面的例子向 user 表添加一条记录:

<?php
$conn = @mysql_connect("localhost","root","root123");
if (!$conn){
  die("连接数据库失败:" . mysql_error());
}

mysql_select_db("test", $conn);
mysql_query("set names 'gbk'"); //为避免中文乱码做入库编码转换
//mysql_query("set names 'utf8'"); //PHP 文件为 utf-8 格式时使用
$password = md5("123456"); //原始密码 12345 经过加密后得到加密后密码
$regdate = time();  //得到时间戳
$sql = "INSERT INTO user(username, password, email, regdate)VALUES('小王', '$password',
 '12345@163.com', $regdate)";
//exit($sql);             //退出程序并打印 SQL 语句,用于调试

if(!mysql_query($sql,$conn)){
  echo "添加数据失败:".mysql_error();
} else {
  echo "添加数据成功!";
}
?>

如果是表单提交的数据,那么在数据处理页面可以使用 $_POST 或 $_GET 接收表单数据而将数据写入数据表。
说明
1.为了避免数据记录因为编码问题无法写入数据表或写入乱码,所以在执行 mysql_query() 之前,进行了编码转换
2.存储密码为实际密码经过 MD5 加密,MD5 加密不可逆,如要验证密码,只需将用户输入的密码经 MD5 加密后与数据库密码比对即可
3.在 SQL 语句中,我们使用单引号''来表示文本字符属性
4.为了调试数据写入数据表中出现的异常,增加了退出程序并打印 SQL 语句的功能,在需要调试的时候可去掉语句前面的注释,使之生效而便于调试

MySQL Select from 查询数据
普通查询
SELECT FROM 语法用于从数据表中查询读取数据。
语法:

SELECT column1,column1,... FROM tb_name

如果要读取全部字段,可以使用 * 号代替字段名:

SELECT * FROM tb_name

例子:

<?php
$conn = @mysql_connect("localhost","root","root123");
if (!$conn){
  die("连接数据库失败:" . mysql_error());
}

mysql_select_db("test", $conn);
mysql_query("set character set 'gbk'");  //避免中文乱码字符转换
mysql_query("set character set 'utf8'");  // PHP 文件为 utf-8 格式时使用
$sql = "SELECT * FROM user";
$result = mysql_query($sql);        //得到查询结果数据集

//循环从数据集取出数据
while( $row = mysql_fetch_array($result) ){
  echo "用户名:".$row['username']."<br />";
  echo "电子邮件:".$row['email']."<br />";
  echo "注册日期:".date("Y-m-d", $row[regdate])."<br /><br />";
}
?>

浏览器输出:
用户名:admin
电子邮件:admin@5idev.com
注册日期:2010-08-06

用户名:小明
电子邮件:xiao@163.com
注册日期:2010-07-02

用户名:Jack
电子邮件:jack@gmail.com
注册日期:2010-07-02

用户名:小王
电子邮件:12345@163.com
注册日期:2010-11-13
说明
1.使用 mysql_query("set character set 'gbk'") 来避免读取数据的中文乱码
2.mysql_query() 得到的是数据集资源(Resource),需要用 mysql_fetch_array() 函数来取得
3.使用 while 循环来逐行取得全部数据

相关文章

  • MySQL 元数据查看及实例代码

    MySQL 元数据查看及实例代码

    这篇文章主要介绍了MySQL 元数据查看及实例代码的相关资料,需要的朋友可以参考下
    2017-01-01
  • Mysql如何查看表及字段信息

    Mysql如何查看表及字段信息

    这篇文章主要介绍了Mysql如何查看表及字段信息,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • Mysql内连接与外连接的区别详解

    Mysql内连接与外连接的区别详解

    最近别人问我一个问题:数据库中的左连接和右连接有什么区别?所以这篇文章主要给大家介绍了关于Mysql内连接和外连接区别的相关资料,需要的朋友可以参考下
    2023-01-01
  • Mysql中SQL语句不使用索引的情况

    Mysql中SQL语句不使用索引的情况

    今天小编就为大家分享一篇关于Mysql中SQL语句不使用索引的情况,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Mysql账号管理与引擎相关功能实现流程

    Mysql账号管理与引擎相关功能实现流程

    Mysql中的每一种技术都使用不同的存储机制、索引技巧、锁定水平、并且最终提供广泛的不同功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善应用的整体功能。这些不同的技术以及配套的相关功能在MySQL中被称作存储引擎
    2022-10-10
  • MySQL8.0窗口函数入门实践及总结

    MySQL8.0窗口函数入门实践及总结

    这篇文章主要给大家介绍了关于MySQL8.0窗口函数入门实践及总结的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MySQL8.0具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • MySQL数据库CPU飙升到100%的详细解决方案

    MySQL数据库CPU飙升到100%的详细解决方案

    在监控线上数据库的运行是否安全、正常的过程中,cpu使用率是一个重要的指标,一旦cpu使用率飙升至90%+甚至达到100%,必然会对数据库的正常工作产生影响,下面这篇文章主要给大家介绍了关于MySQL数据库CPU飙升到100%的详细解决方案,需要的朋友可以参考下
    2023-05-05
  • 6G数据库的导入 报各种错误的解决办法

    6G数据库的导入 报各种错误的解决办法

    今天看到一高人的mysql数据库达到了6G左右,导入都是个问题,上传也挺麻烦的,这里特分享下,方便需要的朋友
    2013-01-01
  • MySQL判断空值的三种方法

    MySQL判断空值的三种方法

    在创建表时,可以指定的列是否可以不包含值,如果在一个列不包含值,则其称其为空值NULL,NULL一个特殊值,代表缺失的值或者不适用的情况,表示未知数据,本文给大家介绍了MySQL判断空值的三种方法,需要的朋友可以参考下
    2024-03-03
  • 在Windows系统上使用压缩归档文件安装MySQL的步骤

    在Windows系统上使用压缩归档文件安装MySQL的步骤

    这篇文章主要介绍了在Windows系统上使用压缩归档文件安装MySQL的步骤,非常不错,具有一定的参考借鉴加载,需要的朋友可以参考下
    2018-06-06

最新评论