【数据库系统概论】第3章-关系数据库标准语言SQL(1)

文章目录

    • [3.1 SQL概述](#3.1 SQL概述)
    • [3.2 学生-课程数据库](#3.2 学生-课程数据库)
    • [3.3 数据定义](#3.3 数据定义)
      • [3.3.1 数据库定义](#3.3.1 数据库定义)
      • [3.3.2 模式的定义](#3.3.2 模式的定义)
      • [3.3.3 基本表的定义](#3.3.3 基本表的定义)
      • [3.3.4 索引的建立与删除](#3.3.4 索引的建立与删除)
      • [3.3.5 数据字典](#3.3.5 数据字典)

3.1 SQL概述

  • 动词
  • 分类
  • 三级模式

3.2 学生-课程数据库

3.3 数据定义

3.3.1 数据库定义

  1. 创建数据库

    tips:[ ]表示可选,<>表示必选
    举例:

  2. 修改数据库

    举例:

  3. 删除数据库

    Drop database mydb

  4. 打开数据库

    use mydb

例题:先判断数据库存在再删除

sql 复制代码
use master
go
if exists(select * from sysdatabases
			where name = 'mydb')
drop database mydb

3.3.2 模式的定义

模式(SCHEMA)相当于一个namespace,可定义该模式下的其他的数据库对象:基本表,视图,索引等,防止不同用户命名冲突。

  1. 创建

    举例:zhang后面没 ;
  2. 删除

3.3.3 基本表的定义

  1. 创建

  2. 约束
  3. 修改

  4. 删除
  5. 模式与表

3.3.4 索引的建立与删除

建立索引的目的:加快查询速度。按列取值的不可重复性(包括NULL)分为唯一索引(unique index)和一般索引(index)。其中聚簇索引是唯一的,且只有一个;非聚簇索引可以是唯一的,也可以是不唯一的,可有多个。
详细索引介绍

  1. 创建
sql 复制代码
create clustered index Stusno on Student(sno)  // 默认升序索引
create unique index Stusno on Student(sno)
create index Stuson Stusno on Student(sno desc)
  1. 修改
sql 复制代码
alter index old_name rename to new_name
  1. 删除
sql 复制代码
drop index Stusname

3.3.5 数据字典

相关推荐
凯子坚持 c1 分钟前
基于C++构建DeepSeek大模型推理SDK:从架构设计到工程落地
java·数据库·c++
yqzyy4 分钟前
maven导入spring框架
数据库·spring·maven
阿贵---14 分钟前
使用Fabric自动化你的部署流程
jvm·数据库·python
FirstFrost --sy14 分钟前
MySQL数据类型详解
数据库·mysql
fy1216319 分钟前
MySQL篇(管理工具)
数据库·mysql
SelectDB28 分钟前
PostgreSQL + Apache Doris:构建用于实时分析的 HTAP 架构
大数据·数据库·数据分析
Riden刘31 分钟前
SQL里怎么存变量?怎么优雅处理递归?不妨了解下CTE!
数据库·sql
2401_8732046536 分钟前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python
阿蒙Amon39 分钟前
C#常用类库-详解JetBrains.Annotations
前端·数据库·c#
m0_7166670742 分钟前
工具、测试与部署
jvm·数据库·python