博主信息
JiaJieChen
博文
63
粉丝
3
评论
5
访问量
42712
积分:0
P豆:128

PHP:MySQL常用DDL数据定义语言, DML数据库操作语言,PDO连接数据库操作

2021年05月13日 12:38:16阅读数:595博客 / JiaJieChen/ PHP

PHP:MySQL常用DDL数据定义语言, DML数据库操作语言,pdo操作数据库的对象方法

一.常用DML数据库操作语言

  • SQL语句语法规范

    • 常用MySQL的关键字我们需要大写,库名、表名、字段名称等使用小写

    • SQL语句支持折行操作,拆分的时候不能把完整单词拆开

    • 数据库名称、表名称、字段名称不要使用MySQL的保留字,如果必须要使用,需要用反引号``将其括起来

命令含义
MySQL -uroot -ppassword登入数据库,-u账号,-p密码
exit退出数据库
SELECT USER();得到登陆的用户
SELECT NOW();得到当前的日期时间
SELECT VERSION();得到MySQL的版本信息
SELECT DATABASE();得到当前打开的数据库
USE db_name;打开指定数据库
SHOW TABLES;查看当前数据库下已有数据表
DESC tbl_name;查看表结构

①MySQL -uroot -ppassword 登入数据库,-u账号,-p密码

②SELECT USER();得到登陆的用户

③SELECT NOW();得到当前的日期时间

④SELECT VERSION();得到MySQL的版本信息

⑤SELECT DATABASE();得到当前打开的数据库

⑥USE db_name;打开指定数据库

⑦SHOW TABLES;查看当前数据库下已有数据表

⑧DESC tbl_name;查看表结构

二.常用DDL数据定义语言

  • 添加记录

    • INSERT tbl_name[(字段名称…)] SELECT 字段名称,… FROM  tbl_name [WHERE 条件]

    • INSERT [INTO] tbl_name[(col_name,…)] {VALUE|VALUES}(VALUES…);

  • 修改记录

    • UPDATE tbl_name SET 字段名称=值,字段名称=值 [WHERE 条件]

    • 如果不添加条件,整个表中的记录都会被更新

  • 删除记录

    • TRUNCATE [TABLE] tbl_name;

    • 清除表中所有记录

    • 会重置AUTO_INCREMENT的值

    • DELETE FROM tbl_name [WHERE 条件]

    • 如果不添加条件,表中所有记录都会被删除

    • DELETE 清空数据表的时候不会重置AUTO_INCREMENT的值,可以通过ALTER 语句将其重置为1

    • 彻底清空数据表

  • 查询记录

    • SELECT FROM tbl_name; 所有字段

    • SELECT select_expr,… FROM tbl_name
      [WHERE 条件]
      [GROUP BY {col_name|position} HAVING 二次筛选]
      [ORDER BY {col_name|position|expr} [ASC|DESC]]
      [LIMIT 限制结果集的显示条数]

    • 查询表中所有记录

  • 指定字段的信息

    • SELECT 字段名称,… FROM tbl_name

  • 库名.表名

    • SELECT 字段名称,… FROM db_name.tbl_name;

  • 给字段起别名

    • SELECT 字段名称 ,… FROM tbl_name [AS] 别名;

  • 表名.字段名的

    • SELECT tbl_name.col_name,… FROM tbl_name;

三.MySQL中的数据类型

  • 数值型

    • 整数型

    • 浮点型

  • 字符串类型

    • CHAR效率高于VARCHAR,CHAR相当于拿空间换时间,VARCHAR拿时间换空间

    • CHAR默认存储数据的时候,后面会用空格填充到指定长度;而在检索的时候会去掉后面空格;VARCHAR在保存的时候不进行填充,尾部的空格会留下

    • TEXT列不能有默认值,检索的时候不存在大小写转换

  • 日期时间类型

三.PDO连接数据库操作

①用户名重复检测


②用户名注册信息传送到数据库表

注册按钮代码块

<?php//连接数据库require "/xp/phpstudy_pro/WWW/www.zwz.com/zwz/0511/config/PDO.php";session_start();$username = isset($_POST["username"]) ? $_POST["username"] : null;$password = isset($_POST["password"]) ? md5( $_POST["password"]) : null;$password2 = isset($_POST["password2"]) ? $_POST["password2"] : null;$captcha = $_POST["captcha_value"];//时间戳$create_time = time();//sql 语句 数据库表添加$insert = "INSERT INTO `User` SET `uname` = '{$username}', `pwd` = '{$password}',`create_time` = '{$create_time}';";$connect = $pdo->exec($insert);$tips;if ($connect !== 0) {    $tips = 0;}else {    $tips = 1 ;}if (!empty($username) && !preg_match("/^[A-Za-z]/i",$username)){    $tips = 0 ;}else {    $tips = 1 ;}if ((!empty($password) && !empty($password2)) && !(strcmp($password,$password2))){    $tips = 1 ;}else {    $tips = 0 ;}if(strtolower($_SESSION["captcha"]) === strtolower($captcha)){    $_SESSION["captcha"]="";    $tips = 1 ;}else {    $tips = 0 ;}if ($tips === 1) {    echo json_encode(["id" => 1 , "mgs" => "注册成功"],320);}else {    echo json_encode(["id" => 0 , "mgs" => "注册失败"],320);}//点击按钮$("button[name='button']").click(function () {  let data = {};  //用户名数据  data.username = $("input[name = 'username']").val();  //密码数据  data.password = $("input[name = 'password']").val();  data.password2 = $("input[name = 'password2']").val();  // console.log(data);  //判断是否用户输入空值  $.post(    "index.php",    data,    function (res) {      if (res.id == 1) {        alert("注册成功");      } else {        alert("注册失败");        return;      }    },    "json"  );});

用户名重复检测代码块

<?php//引入服务器require "/xp/phpstudy_pro/WWW/www.zwz.com/zwz/0511/config/PDO.php";session_start();//获取用户输入的用户名$username = $_POST['username'];$select = "SELECT * FROM USER WHERE UNAME =  '{$username}'; ";$connect = $pdo->query($select)->fetchAll(PDO::FETCH_ASSOC);if (empty($connect) || !preg_match("/^[A-Za-z]/i",$username) ) {    echo json_encode(["id" => 1, "mgs" => "不是字母" ],320);}else {    echo json_encode(["id" => 0, "mgs" => "是字母" ],320);}//设置用户名失去焦点的时候检查第一个字母是否是字母$("input[name = 'username']").blur(() => {  var data = {};  //用户名数据  data.username = $("input[name = 'username']").val();  //密码数据  data.password = $("input[name = 'password']").val();  data.password2 = $("input[name = 'password2']").val();  $.post(    "username.php",    data,    function (res) {      if (res.id == 1) {        $("#error_msg").html("<span style='color:green'; >用户名不存在</span>");      } else {        $("#error_msg").html("<span style='color:red'; >用户名存在</span>");      }    },    "json"  );});
批改状态:未批改

老师批语:

版权申明:本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!

全部评论

文明上网理性发言,请遵守新闻评论服务协议

条评论
  • 共分为四大类:1、查询DQL;2、DML;3、DDL;4、控制DCL。
    mysql ddl的缩写,简单来说,就是对内部的对象进行创建、删除、修改等DDL句更多的是由管理员使,开发人员一般很少使
    的缩写词为“DDL”,英文全称是“Data Definition Language”,是于描述中要存储的现实世界实体的,这些包括结构方法等。
    sql属于关系型。关系型一种具有纵和等多种功能的,这种具有交互性特点,能为户提供极大的便利,而且能利sql提高计算机应系统的工质量与效率。
    见的系统软件有:DOS系统、WINDOWS系统、UNIX系统和Linux、Netware等系统;汇编汇编器,C编译、器等处理程序;Access,Oracle,MySQL
    网络上db是:1、,是按照结构来组织、存储和管理的仓;2、一种元素符号;3、口;4、分贝;5、汇编中的伪命令,的字节
    DDL句,和表的创建、修改、删除,主要是针对和表的。mysql教程栏目在本文针对DDL做深入讲解,附相关练习题。
    sql和mysql的区别:1、sql是一种,而mysql是DBMS管理系统;2、SQL于访问,更新和中的,而mysql允许保持中存在的;3、sql的是固
    mysql句的注入式错误就是利某些的外部口将插入到实际的SQL当中,从而达到入侵乃至系统的目的。
    mysql存储过程:首先SQL句在执行的时候需要要先编译;然后执行,而存储过程是一组为了完成特功能的SQL句集,经编译后存储在中,户通过指存储过程的名字并给来调执行它
    sql具有的三个见功能是:1、;能够的三级模式结构,即外模式、全局模式和内模式结构。2、纵;包括对基本表和视图的插入、删除、修改和查询功能。
    不属于,管理系统属于系统软件。
    在mysql中,存储过程和存储函都是的一些SQL句的集合。其中,存储函可以通过return句返回函值,主要于计算并返回一个值;而存储过程没有直返回值,主要于执行
    MySQL 体系架构主要分为两部分:客户端和服务端客户端客户端器主要负责一些客户端的,针对不同的编程驱动提供服务。