【数据库系统概论】第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 数据字典

相关推荐
xixingzhe213 分钟前
数据库备份的分类与特点
数据库
时间的拾荒人4 小时前
Redis 主从复制详解:配置实操 + 原理机制
数据库·redis·面试
隔窗听雨眠4 小时前
MySQL三表JOIN执行内核与优化器决策机制
数据库·mysql·sql优化
Decay__5 小时前
SQLServer 索引与 SQL 优化 —— 聚集索引、非聚集索引、覆盖索引、碎片维护与执行计划
运维·数据库·sql·mysql·架构
笃行3506 小时前
【金仓数据库产品体验官】订单增量同步实战:MERGE、OUTPUT 与 IDENTITY 的兼容验证
数据库
星恒随风10 小时前
MySQL 从零入门(六):复合查询详解——多表查询、自连接、子查询与 UNION
linux·服务器·数据库·mysql
无奈笑天下11 小时前
银河麒麟上lsblk命令教程详解
linux·运维·服务器·数据库
xiaoye-duck12 小时前
《C++ 项目:手写大模型接入 SDK》会话模块整合:内存 SessionManager 与 DataManager 持久化联动
开发语言·数据库·c++·语言模型
AllData公司负责人13 小时前
AI大模型数据开发底座系列说明书:AllData集成DB-GPT开源项目建设 AI 多模态分析底座,涵盖模态解析/智能大屏/MCP 扩展!
大数据·数据库·人工智能·gpt·数据采集·数据接入·模态解析
2601_9679873713 小时前
Sqlite参考手册
数据库·python·sqlite·api·教程