关系数据库—SQL(学习笔记)
关系模型支持三级模式结构:模式,外模式,和内模式;
模式:是指数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。它涉及的仅仅
SQL的特点:模式,外模式,和内模式: 关系模型支持三级模式结构:模式,外模式,和内模式; 模式:是指数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。它涉及的仅仅是对于某一类数据的结构和属性的描述。模式的一个具体值称为模式的一个实例,同一模式下可以有很多个实例。模式是相对稳定的,而实例是相对变动的。 外模式:也称子模式,或用户模式Mssq数据完整性约束,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的表述,是数据库用户的数据视图。是与某一应用有关的数据的逻辑表示。 内模式:也称存储模式,一个数据库只有一个内模式。他是数据物理结构和存储方式的描述,是数据库内部的组织方式。 模式与外模式的关系:一对多。 外模式与应用的关系:一对多。 其中外模式包括若干视图和部分基本表,数据库模式包括若干基本表,内模式包括若干存储文件。 数据库,模式,表的关系: 一个数据库可以建立多个模式,一个模式下通常包括多个表,视图和索引等数据库对象; SQL数据库定义语句: 模式 :创建:create schema 删除:drop schema表: 创建:create table 删除:drop table视图:创建:create view 删除:drop view索引:创建:create index 删除:drop index模式的定义与删除: 1.定义模式: Create schema 模式名 authorization 用户名 定义模式实际上定义了一个命名空间,建立了一个数据库的命名空间,一个框架。在创建模式时,同时也可以创建基本表,以及视图,并且可以定义授权。 2.删除模式: drop schema 模式名 cascade或者drop schema 模式名 restrict cascade:为级联,表示删除该模式时,删除该模式中所有的数据库对象。 Restrict:为限制,表示如果该模式中已经定义了下属的数据库对象,则拒绝执行该语句。 基本表: 1.定义基本表: Create table 表名 (列名 数据类型 列级完整性约束条件, 列名 数据类型 列级完整性约束条件, 表级完整性约束条件); 如果完整性约束涉及该表的多个属性列,则必须定义在表级上,否则既可以定义在表级也可以定义在列级。 例如:
定义表的模式: 方法一:在表中明显的定义模式名: Create table “S-T”.course(…);/*course所属的模式是S-T*/ 方法二:在创建模式的同时创建表; 方法三:设置所属的模式。 当创建基本表时,若没有指定模式,系统会根据搜索路径来确定该对象所属的模式(搜索结果中第一个存在的模式)。 显示当前的搜索路径: Show search_path; /*默认值是$user,public ,首先搜索与用户名相同的模式名,不过不存在这使用public*/ 设置搜索路径,如: Set search_path to “S-T”,public; 然后创建基本表: Create table course(…); 2.修改基本表: Alter table 表名 Add [column] 新列名 数据类型 完整性约束 /*增加新列*/ Add 表级完整性约束 /*增加表级完整性约束*/ Drop [column] 列名 cascade /**强制删除*/ Drop [column] 列名 restrict Alter column 列名 数据类型 /*修改原有列定义**/ 3.删除基本表: Drop table 表名 restrict //有限制条件的删除,不能被其他的对象引用。 或者Drop table 表名cascade //强制删除 (编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |