网站首页 > 精选文章 正文
SQL语言
8.3数据库定义
8.3.1 基本域类型
- char(n):固定长度字符串
- varchar(n):可变长度字符串,表示最多可以有n个字符的字符串
- int:整型,也可以用integer
- smallint:短整型
- numeric(p,d):定点数p为整数位,d为小数位
- real:浮点型
- double precision:双精度浮点型
- float(n):n浮点型
- boolean:布尔型
- date:日期型
- time:时间型
8.3.2创建表
create table<表名>(<列名><数据类型><列级完整性约束条件><表级完整性约束条件>)
列级完整性约束条件:有NULL(空)not NULL(不为空)和unique(取值唯一);
例子:create table sc(Sno char(5),Cno char(5),grade smallint()
primary key (Sno,Cno) 主键(主码)
foreign key (Sno) references S(Sno)外码
foreign key (Cno) references C(Cno)
)
8.3.3 修改表和删除表
alter table<表名>(ADD<列名><数据类型><完整性约束条件>)
(modify<列名><数据类型>)
(drop<列名>或<数据类型>
drop table 删除表
8.3.4 创建和删除索引
- 索引是表中一列或者若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单
索引的作用
- 通过索引创建唯一索引,保证数据记录的唯一性
- 大大加快数据检索速度
- 加速表与表之间的连接
- 在使用order by 和 group by字句中进行检索数据,减少查询时间
- 使用索引,提供系统性能
索引的分类
- 聚集索引:指索引表中索引项的顺序与表中记录的物理顺序一致的索引
- 非聚集索引
建立索引
create 【unique】【cluster】index 索引名 on 表名 列名 ASC(升序)/DESC(降序),默认ASC
unique:表明索引的每一个索引值只对应唯一的数据记录
cluster:表明建立聚族索引
例子:create unique index Sno-Cno on sc (Sno asc , Cno desc)
删除索引
drop index 索引名
8.3.5 视图创建和删除
1、视图的作用
- 视图不是真实存在的基本表是虚拟表
- (1)集中数据、简化、和定制用户对数据库的不同数据要求
- (2)视图可以屏蔽数据的复杂性,方便用户使用和管理数据
- (3)视图使用用户关心他特定的数据和任务
- (4)视图大大简化用户对数据的操作
- (5)视图让用户不同的方式看到不同或相同的数据
- (6)方便应用程序使用
- (3)视图提供简单而有效的安全机制
2、视图的创建
create view 视图名 (列表名)
as select 查询子句
【with check option】
例子:create view cs-student
as select Sno ,Sname ,Sage ,Sex from student with check option
视图必须遵循的规定
- 1、子查询可以是任意复杂的select语句,但不允许含有order by字句和distinct短语
- 2、with check option表示对update、inster、delete操作时保证更新、插入或删除的行满足视图定义中的谓词条件
- 3、组成视图的属性列名或者全部省略或者全部指定
3、视图的删除
drop view 视图名
猜你喜欢
- 2025-07-23 MySQL之数据库的设计(mysql数据库设计与应用)
- 2025-07-23 MySQL--索引(mysql索引有哪几种)
- 2025-07-23 系统整容纪:用知识来"武装"自己~认识MySQL的锁与事务
- 2025-07-23 MySQL innodb的B+树到底长什么样,为什么MySQL要这样设计?
- 2025-07-23 软网推荐:超强密码的产生与记忆(网络密码解锁软件)
- 2025-07-23 Go语言数据库编程:GORM 的基本使用
- 2025-07-23 数据库——主键和唯一键的区别(mysql简述主键与唯一约束的区别)
- 2025-07-23 系统性能分析从入门到进阶(系统性能分析怎么写)
- 2025-07-23 从零开始一个完整的全栈项目(2) - 创建数据库表
- 2025-07-23 MySQL数据库之数据库约束,一文带你了解
- 最近发表
- 标签列表
-
- 向日葵无法连接服务器 (32)
- git.exe (33)
- vscode更新 (34)
- dev c (33)
- git ignore命令 (32)
- gitlab提交代码步骤 (37)
- java update (36)
- vue debug (34)
- vue blur (32)
- vscode导入vue项目 (33)
- vue chart (32)
- vue cms (32)
- 大雅数据库 (34)
- 技术迭代 (37)
- 同一局域网 (33)
- github拒绝连接 (33)
- vscode php插件 (32)
- vue注释快捷键 (32)
- linux ssr (33)
- 微端服务器 (35)
- 导航猫 (32)
- 获取当前时间年月日 (33)
- stp软件 (33)
- http下载文件 (33)
- linux bt下载 (33)