Oracle学习之数据库对象(表、索引、视图、缺省值、规则(约束)、触发器、用户、存储过程)

数据库对象

表、索引、视图、缺省值、规则(约束)、触发器、用户、存储过程、函数等。

表格

数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row) 和列(Column)组成的。

创建表

  • 语法(没加约束):

CREATE TABLE 表名称 ( 列名称1 数据类型,
列名2 数据类型,
列名称3 数据类型,
… ,
列名称N 数据类型);

  • 注意
命名规则:字母、数字、下划线(_)组成,不要以数字开头

查看表结构

  • 语法

command Windows命令窗口:
DESC 表名;

修改表:增加一列或多列

  • 语法

alter table 表名 add(字段名 数据类型,字段名2 数据类型2);

修改表:修改一列或多列

  • 语法

alter table 表名 modify(字段名 数据类型,字段名2 数据类型2);

增加和修改列是不需要加关键字COLUMN,否则会报错ora-00905

删除表

  • 语法

drop table 表名;

删除表:删除一列

  • 语法

alter table 表名 drop column 字段名;

删除表:删除多列

  • 语法

alter table 表名 drop(字段名1,字段名2,````);

删除一列时要加COLUMN,多列时不用

索引

索引是根据指定的数据库表列建立起来的顺序。它提供了快速访问数据的途径,并且可监督表的数据,使其索引所指向的列中的数据不重复。就好比书的目录一样,可以通过目录来直接定位所需内容存在的页数,大大提高检索效率。

  • 语法:

CREATE INDEX 索引名称 ON 表名(column…);

视图

视图一个虚拟的表,在数据库中并不实际存在。视图是由查询数据库表产生的,它限制了用户能看到和修改的数据。由此可见,视图可以用来控制用户对数据的访问,并能简化数据的显示,即通过视图只显示那些需要的数据信息。

  • 语法

    CREATE [OR REPLACE]  VIEW view_name
    AS
    SELECT查询
    [WITH CHECK OPTION]
    [WITH READ ONLY CONSTRAINT]
    
  • 语法解析:

CREATE OR Replace:用于创建和修改视图
WITH CHECK OPTION:用于创建限制数据访问的视图
WITH READ ONLY:用于创建只读视图

缺省值(默认值)

当在表中创建列或插入数据时,对没有指定其具体值的列或列数据项赋予事先设定好的默认值。

  • 语法:

create table 表名(
列名称1 数据类型 [default 默认值]
);

规则(约束)

规则是对数据库表中数据信息的限制。它限定的是表的列。

	唯一约束(unique):该列值是不能重复的,但是可以为null。
    非空(not null):数据不能为NULL。
    主键(primary key):唯一的标识表行的数据,当定义主键约束后,该列不但不能重复而且不能为NULL。
    检查(check):检查值是否满足某个条件,属于表对象,必须要有名字
    外键(references):主副表间的关联关系。
    
  • 创建表语法(加约束):

create table 表名(
列名称1 数据类型 [primary key],
列名称2 数据类型 [unique],
列名称3 数据类型 [not null | null],
列名称4 数据类型 check(条件),
列名称5 数据类型 [references 表名(列名)]

列名称N 数据类型 [default 默认值] [等限制]
);

存储过程

语法:

create proc 存储过程名
参数1 参数类型
as
declare 输出参数 输出参数类型
执行行或者程序块
执行存储过程
exec 存储过程名
存储过程是为完成特定的功能而汇集在一起的一组SQL 程序语句,经编译后存储在数据库中的SQL 程序。

触发器

触发器由事件来触发,可以查询其他表,而且可以包含复杂的SQL语句。主要用于强制服从复杂的业务规则或要求。也可用于强制引用完整性,以便在多个表中添加、更新或删除行时,保留在表之间定义的关系。

  • 语法:

Create Trigger 触发器名称 on 表名
for (操作)(即insert,update,delete)
as
执行行或者程序块
执行触发器
在对表做相应操做时触发
触发器是一个用户定义的SQL事务命令的集合。当对一个表进行插入、更改、删除时,这组命令就会自动执行。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章