数据库速通:基础篇(中)

249 阅读2分钟

日新计划6月更文 Day 14

  上一篇我们讨论了关系型数据库枯燥的的理论知识,接下来我们就要进行简单的实践了。

  我们不使用抽象的关系运算来操作数据库,而是使用一门非常亲民的语言—— SQL 进行。

  结构化查询语言(Structed Query Language,SQL)是关系数据库的标准语言,用于进行数据库模式创建、数据库中数据段增删改查、数据库安全性等的定义与操作等。

  SQL具有综合统一、高度非过程化、面向集合操作、同一语法结构多重使用方式、简单易学等优点。SQL规范是一套较理想的规范,现在没有任何一个数据库系统实现了SQL规范的全部内容。

  根据功能的不同,SQL又分为DDL、DML、DQL、DCL等:

  • DDL:Data Definition Language,数据定义语言,用于定义、修改、删除数据库中的模式,创建、修改、删除数据表、索引、函数、存储过程、触发器等。
  • DML:Data Manipulation Language,数据操纵语言,用于对数据库中的数据进行增、删、改,受事务作用。
  • DQL:Data Query Language,数据查询语言,用于查询数据库中的数据
  • DCL:Data Control Language,数据控制语言,用于控制数据的访问权限、事务的开启、提交与回滚等。
  1. SQL 是大小写不敏感的
  2. DDL不能用于创建下一个DDL

  创建一个模式使用CREATE SCHEMA,如:

Create Schema "CatParadise";
# 或者 Create Database "CatParadise";

  删除模式使用DROP SCHEMA,如:

Drop Schema "CatParadise";

  创建一张表使用CREATE TABLE,如:

Create Table `Admin`(
    `id` int Not Null,
    `name` varchar(32),
    `birthday` date,
    # 设置主键
    Primary Key(`id`)
);
Create Table `Cat`(
    `id` int Not Null,
    `name` varchar(32),
    `birthday` date,
    `admin` int,
    Primary Key(`id`),
    # 设置外键约束
    Foreign Key(`admin`) References `Admin`(`id`)
);

  可以使用ALTER TABLE编辑表的结构:

Alter Table $table 
    Add $column [First/After $columnName];    # 添加字段
    Modify $column $type;                     # 修改字段数据类型
    Change $column $columnName $type;         # 修改字段属性
    Drop Column $column;                      # 删除字段 
    Drop Primary Key;                         # 删除主键
    Rename To $tablename;                     # 重命名表

  删除数据表使用DROP TABLE,如:

Drop Table `Cat`;

  本文讲述了基础的 DDL 的使用,后续将会讲述DML、DQL等的使用。