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

相关推荐
ly76895 小时前
Redis 分布式锁的边界条件:Redlock 争议、锁续期与客户端崩溃后的互斥失效
数据库·redis·分布式·分布式锁·watchdog·redlock
kaixin_learn_qt_ing5 小时前
qgeoview-samples-basic
数据库
Omics Pro5 小时前
微软:多模态生物世界模型
数据库·人工智能·算法·microsoft·机器学习·自然语言处理
字节渡客6 小时前
接口明明返回成功,数据库偶尔就是没写入
数据库
Ivanqhz6 小时前
KV Cache
服务器·数据库·人工智能·深度学习·算法
Omics Pro6 小时前
~30,000+引用!理论2005,R包2008,多组学集成AI增强
开发语言·数据库·人工智能·算法·机器学习·自然语言处理·r语言
呆萌很6 小时前
数据库逻辑结构设计
数据库
howdoyoudo2026066 小时前
当新案例冲击旧框架:分类系统的宿命与修正路径
大数据·网络·数据库·人工智能·安全·ai·分类
自己的九又四分之三站台6 小时前
GeoPackage 到底适合什么场景:从 SQLite 容器到空间数据格式选型
数据库·oracle·sqlite
东方护航数据恢复(深圳)7 小时前
勒索病毒加密数据库怎么办?深圳 0 赎金解密恢复实录【东方护航数据恢复深圳店】
数据库·数据恢复·服务器数据恢复·勒索病毒·数据镜像