当前位置: 首页 > 编程笔记 >

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

刘和玉
2023-03-14
本文向大家介绍结合PHP脚本添加和查询MySQL数据的基本教程,包括了结合PHP脚本添加和查询MySQL数据的基本教程的使用技巧和注意事项,需要的朋友参考一下

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 慢查询的相关参数解释:slow_query_log :是否开启慢查询日志,1表示开启,0表示关闭。 slow_query_log :是否开启慢查询日志,1表示开启,0表示关闭。 log-slow-queries :旧版(5.6以下版本)

  • 本文向大家介绍php基础之连接mysql数据库和查询数据,包括了php基础之连接mysql数据库和查询数据的使用技巧和注意事项,需要的朋友参考一下 连接数据库,有三种方法 1. 常规方式: //mysql_fetch_row   提取的结果是没有查询中的字段名了(也就是没有键id,GoodsName,只有值),如下图: //mysql_fetch_assoc 提取的结果有键值,如下图: //mys

  • 本文向大家介绍MySQL中查询日志与慢查询日志的基本学习教程,包括了MySQL中查询日志与慢查询日志的基本学习教程的使用技巧和注意事项,需要的朋友参考一下 一、查询日志   查询日志记录MySQL中所有的query,通过"--log[=file_name]"来打开该功能。由于记录了所有的query,包括所有的select,体积比较大,开启后对性能也有比较大的影响,所以请大家慎用该功能。一般只用于跟

  • 本文向大家介绍php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳),包括了php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)的使用技巧和注意事项,需要的朋友参考一下 php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳) php 获取今日、昨日、上周、本月的起始时间戳和结束时间 以上这篇php、mysql查询当天,查询本周,查询本月的数据

  • 我有一个php脚本,从一个表中获取数据,然后尝试将获得的数据插入到第一个表的第二个表副本中: 插入查询工作正常,但有一种情况下会出现异常:其中一个字段包含失败查询的字符exp:INSERT INTO table2(id,Field1,Field2)值('12','Company','Kurt's Reifen-Shop')异常来自字符如何插入包含此字符的php变量。

  • 我使用Spring Data JPA进行如下原生查询 现在,我的用例是 如果可用,则只应返回该类别中具有该代码的项目 但如果不可用,则应返回该类别中的所有项目 因此,上述类别的问题是当作为传递时,不会返回任何数据,因为它与任何内容都不匹配。尽管要求很高,但它应该被忽略。 那么,有没有一种方法可以选择性地向Spring数据JPA本机查询添加一个子句呢。我知道使用是可能的,但是我们能为原生查询做类似的