SQL的语法


  • SQL通用语法

    1. SQL语句可以单行或多行书写,以分号(“;”)结尾。

    2. SQL语句可以使用空格或缩进增强可读性。

    3. MySQL数据库的SQL语句不区分大小写(建议关键字大写)。

    4. 注释

      单行注释:

      -- 内容
      # 内容(MySQL特有)

      多行注释:

      /* 内容 */
  • SQL语句分类

    分类 全称 说明
    DDL Data Definition Language 数据定义语言,用于定于数据库对象(数据库、表、字段)
    DML Data Manipulation Language 数据操作语言,用来对数据库表中数据进行增加、删除、修改
    DQL Data Query Language 数据查询语言,用于查询数据库表中的记录
    DCL Data Control Language 数据控制语言,用于创建数据库、操控数据库的访问权限
  • 数据库操作(DDL)

    1. 查询:

      查询所有数据库:

      SHOW DATABASES;

      查询当前数据库:

      SELECT DATABASE();
    2. 创建:

      CREATE DATABASE [IF NOT EXISTS] 数据库名称 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];

      (PS:方括号("[]")内的为可选项;字符集推荐使用utf8mb4;)

      (意义:[IF NOT EXISTS]意义为若数据库内已存在该名称的数据库则不执行;)

    3. 删除:

      DROP DATABASE [IF EXISTS] 数据库名称;

      (PS:方括号("[]")内的为可选项;)

      (意义:[IF EXISTS]意义为若数据库存在则执行删除;)

    4. 使用:

      USE 数据库名称;
  • 数据库操作(DDL)- 查询

    1. 查询当前数据库所以的表:

      SHOW TABLES;
    2. 查询表结构:

      DESC 表名;
    3. 查询指定表的建表语句:

      SHOW CREATE TABLE 表名;
  • 数据库操作(DDL)- 创建

    <数据库操作(DDL)- 创建 - 数据库:tb_user>

    CREATE TABLE 表名(
    字段1 字段1的类型 [COMMENT 字段1注释],
    字段2 字段2的类型 [COMMENT 字段2注释],
    字段3 字段3的类型 [COMMENT 字段3注释]
    ) [COMMENT 表注释]

    (PS:方括号("[]")内的为可选项;)

  • 数据库操作(DDL)- 数据类型

    <数据库操作(DDL)- 数据类型 - 案例:08案例.txt>

    <数据库操作(DDL)- 创建 - 数据库:emp>

    MySQL主要数据库类型:

    1. 数值类型:

    (PS:DOUBLE需要设置精度、标度;)

    (意义:精度意义为数值总长度;标度意义为小数点位数;)

    (案例:[字段名 TINYINT UNSIGNED] 意义为当前使用的TINYINT数据类型使用的是无符号的;)

    1. 字符串类型:

    (PS:带BLOB的为二进制存储数据类型;CHAR类型若存储没有达到设定的长度则会用空格填充;VARCHARA类型为所占用的长度则为所占用的空间;)

    (案例:[char(10)] 意义为最大长度为10的字符;)

    1. 日期时间类型:

  • 数据库操作(DDL)- 修改

    1. 添加字段:

      ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束]

      (PS:方括号("[]")内的为可选项;)

    2. 修改数据类型:

      ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);
    3. 修改字段名和字段类型:

      ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];

      (PS:方括号("[]")内的为可选项;)

    4. 删除字段:

      ALTER TABLE 表名 DROP 字段名;
    5. 修改表名:

      ALTER TABLE 表名 RENAME TO 新表名;
  • 数据库操作(DDL)- 删除

    1. 删除表:

      DROP TABLE [IF EXISTS] 表名;

      (PS:方括号("[]")内的为可选项;)

      (意义:[IF EXISTS]意义为若数据库存在则执行删除;)

    2. 删除指定表,并重新创建该表:

      TRUNCATE TABLE 表名;

SQL的语法的更多相关文章

  1. SQL基础语法(二)

    SQL SELECT 语句 本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL ...

  2. Sql常用语法以及名词解释

    Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...

  3. SQL select 语法(转)

    SQL 里面最常用的命令是 SELECT 语句,用于检索数据.语法是: SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ] * | expr ...

  4. SQL基础语法笔记教程整理

    PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...

  5. sql 常用语法汇总

    Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...

  6. MySQL基本语法(一):和SQL Server语法的差异小归纳

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  7. sql基本语法

    sql基本语法 sql server 查询 多表查询 直接多表查询 select * from st_profiles,st_score_report 上面的语句将会产生两个表的笛卡尔乘积,其中大部分 ...

  8. SQL基础语法提纲

    一.SQL需知5点 1.SQL是Structured Query Language的缩写,是用来访问关系型数据库的,非过程化的,高级编程语言. 2.SQL具有语法高度综合统一,高度的非过程化,对集合进 ...

  9. SQL 基础语法笔记教程整理

    最近从图书馆借了本介绍 SQL 的书,打算复习一下基本语法,记录一下笔记,整理一下思路,以备日后复习之用. PS:本文适用 SQL Server2008 语法. 首先,附一个发现的 MySQL 读书笔 ...

  10. ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段

    ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...

随机推荐

  1. js,nodejs如何判断文件是什么编码格式

    nodejs编码只支持utf8的编码方式,无论是打开某个文件或者写.js脚本都得以utf8的编码方式保存,不然程序无法运行,读出来的文件是乱码. 如果是在前台,读取文件是通过FileReader或者F ...

  2. Java学习笔记(韩顺平教育 b站有课程)

    Java重要特点 面向对象(oop) 健壮性:强类型机制,异常处理,垃圾的自动收集 跨平台性的 (一个编译好的.class可以在多个系统下运行) TEST.java -> TEST.class ...

  3. C#多线程下的调优

    一.原子操作 先看一段问题代码 /// <summary> /// 获取自增 /// </summary> public static void GetIncrement() ...

  4. 美团动态线程池实践思路开源项目(DynamicTp),线程池源码解析及通知告警篇

    大家好,这篇文章我们来聊下动态线程池开源项目(DynamicTp)的通知告警模块.目前项目提供以下通知告警功能,每一个通知项都可以独立配置是否开启.告警阈值.告警间隔时间.平台等,具体代码请看core ...

  5. XStream使用记录

    XStream使用记录 官网 http://x-stream.github.io/index.html 下载地址 http://x-stream.github.io/download.html 参考资 ...

  6. Java学习day9

    抽象类的关键字:abstract 类中有抽象方法时,需要在类名前也加上abstract关键字,即 public abstract class 类名{ } 同时,抽象类不能直接实例化,需要通过子类继承, ...

  7. 2021牛客暑期多校训练营3 J 思维

    传送门 J-Counting Triangles_2021牛客暑期多校训练营3 (nowcoder.com) 题目 Goodeat finds an undirected complete graph ...

  8. ElasticSearch7.3学习(十九)---- deep paging

    1.什么是deep paging 根据相关度评分倒排序,所以分页过深,协调节点会将大量数据聚合分析. 2.deep paging 性能问题 1消耗网络带宽,因为所搜过深的话,各 shard 要把数据传 ...

  9. 21天学通Python PDF完整版

    有需要的点击这里自取 内容简介  · · · · · · <21天学通Python>全面.系统.深入地讲解了Python编程基础语法与高级应用.在讲解过程中,通过大量实际操作的实例将Pyt ...

  10. python学习-Day36

    目录 进程 进程间通信 队列(multiprocess.Queue) 概念 Queue的实例q具有以下方法: 消息队列 生产者消费者模型 实现生产者消费者模型三要素: 线程理论 线程概念 线程存在的意 ...