数据库小概念

来源:互联网 发布:php function use 编辑:程序博客网 时间:2024/05/18 01:30

外联接

         LEFTOUTER JOIN或LEFT JOIN \ RIGHT OUTER JOIN或RIGHT JOIN \ FULL OUTER JOIN或FULL JOIN

         (左外联接的结果集中除了包括满足条件的行外,还包括左表所有的行(左表中没有满足条件的以空值的形式出现))

 

主键与外键

     主键是表中的一列或者多列数据,用来惟一标识一行数据.在表中,不允许有主键相同的行存在.在受主键约束的列中,不能有空值(NULL)出现。为了有效实现数据的管理,每一张表有应该有一个主键,而且只能有一个。主键可能是列的组合。

     外键约束主要是为了维护两个表之间的一致性关系,是建立在主键的基础之上的,其值是参考主键的内容。主键的值是惟一的,不能为空,而外键的值可以是重复的、为空的,外键的数值必须在主键中出现。在同一张表中可以有多个外键,每一个外键的创建都必须有一个主键相对应,外键可以是一个列,也可以是多个列的组合。

 

视图

    也被称为虚拟的表,其内容由SELECT查询语句定义。同真实的表一样,视图包含了一系列带有名称的列和行的数据。但是,视图并不在数据库中以存储的数据集合形式存在。用行和列的数据,来自由定义视图的查询所引用的表,并且在引用视图时动态生成。视图一经定义,便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份。通过视图看到的数据只是存放在基表中的数据。对视图的操作与对表的操作一样,可以查询、修改、删除。通过对视图看到的数据进行修改时,相应的基表的数据也要发生变化,同时,若基表的数据发生变化,这种变化也可以自动地反映到视图中。

视图和查询最主要的差别是:视图的存储是作为数据库开发者设计数据库的一部分;而查询仅仅是对表的查询并非数据库设计的一部分。

 

两大类触发器

     DML触发器是基于表而创建的,可以在一张表创建多个DML触发器。其特点是定义在表或者视图上、自动触发、不能被直接调用。用户可以针对INSERT、UPDATE、DELETE语句分别设置触发器,也可以针对一张表上的特定操作设置。触发器可以容纳非常复杂的SQL语句,但不管操作多么复杂,也只能作为一个独立的单元被执行、看作一个事务。如果在执行触发器的过程中发生了错误,则整个事务都会回滚。

     DDL触发器是一种特殊的触发器,它在响应数据定义语言(DDL)语句时触发。可以用于在数据库中执行管理任务,例如审核以及规范数据库操作。

 

原创粉丝点击