领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

SQL简介及其分类(sql类型分类)

nixiaole 2024-11-17 14:23:22 知识剖析 15 ℃

一.简介

SQL (Structured Query Language,结构化查询语言,简称 SQL)是用于访问和处理数据库的标准的计算机语言。一门操作关系型数据库的编程语言,定义操作所有关系型数据库的统一标准。

通用语法

SQL 语句既可以单行书写也可以多行书写,以分号结尾

大小写不敏感,但关键字建议使用大写。

注释:单行注释: -- 注释内容(--后面一定要加空格) (MySQL下也可以用#注释内容)

多行注释: /* 注释 */

SQL分类

DDL(Data Definition Language) : 数据定义语言,用来定义数据库对象:数据库,表,列等

DML(Data Manipulation Language) 数据操作语言,用来对数据库中表的数据进行增删改

DQL(Data Query Language) 数据查询语言,用来查询数据库中表的记录(数据)

DCL(Data Control Language) 数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户

二.DDL:操作数据库

查询所有的数据库

SHOW DATABASES;

创建数据库

CREATE DATABASE 数据库名称;
CREATE DATABASE IF NOT EXISTS 数据库名称; -- 创建数据库(先判断,如果不存在则创建)

删除数据库

DROP DATABASE 数据库名称;
DROP DATABASE IF EXISTS 数据库名称; -- 删除数据库(先判断,如果存在则删除)

使用数据库

数据库创建好后,要在数据库中创建表,得先明确在哪儿个数据库中操作,此时就需要使用数据库。

USE 数据库名称;

查看当前使用的数据库

SELECT DATABASE();

三.DDL:操作表

操作表也就是对表进行增(Create)删(Retrieve)改(Update)查(Delete)。

查询当前数据库下所有表名称

SHOW TABLES;

查询表结构

DESC 表名称;

创建表

CREATE TABLE 表名 (
    字段名1  数据类型1,
    字段名2  数据类型2,
    …
    字段名n  数据类型n  -- 最后一行末尾,不能加逗号
);

数据类型

MySQL 支持多种类型,可以分为三类:

  • 数值
  • tinyint : 小整数型,占一个字节
    int : 大整数类型,占四个字节
    double : 浮点类型
    使用格式: 字段名
    double(总长度,小数点后保留的位数)
    例如 : am
    ount double(5,2)
  • 日期
  • date : 日期值。只包含年月日
    datetime : 混合日期和时间值。包含年月日时分秒
  • 字符串
  • char : 定长字符串。
    优点:存储性能高
    缺点:浪费空间
    例如: name
    char(10) 如果存储的数据字符个数不足10个,也会占10个的空间
    varchar : 变长字符串。
    优点:节约空间
    缺点:存储性能底
    例如 : name
    varchar(10) 如果存储的数据字符个数不足10个,那就数据字符个数是几就占几个的空间

删除表

DROP TABLE 表名;

删除表时判断表是否存在

DROP TABLE IF EXISTS 表名;

修改表名

ALTER TABLE 表名 RENAME TO 新的表名;

添加一列

ALTER TABLE 表名 ADD 列名 数据类型;

修改数据类型

ALTER TABLE 表名 MODIFY 列名 新数据类型;

修改列名和数据类型

ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型;

删除列

ALTER TABLE 表名 DROP 列名;

四.DML

对数据进行增(insert)删(delete)改(update)操作。

给指定列添加数据

INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…);

给全部列添加数据

INSERT INTO 表名 VALUES(值1,值2,…);

批量添加数据

INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;
INSERT INTO 表名 VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;

修改表数据

UPDATE 表名 SET 列名1=值1,列名2=值2,… [WHERE 条件] ; --修改语句中如果不加条件,则将所有数据都修改

删除数据

DELETE FROM 表名 [WHERE 条件] ;

Tags:

最近发表
标签列表