解释 SQL 中表、视图和同义词之间的区别


让我们了解一下结构化查询语言 (SQL) 中的表、视图和同义词。

表、视图和同义词

表是数据的存储库,在表中它是物理实体。表物理地驻留在数据库中。

视图不是数据库物理表示的一部分。它是预编译的,因此数据检索行为更快,并且还提供了一种安全的访问机制。

同义词是分配给表、视图、序列或程序单元的另一个名称。

示例

创建表 employee(empID 整数主键,name varchar2(30),skill varchar2(30),salary number(20),DOB datetime)。

假设有一种情况,工资不显示给一组用户,可以创建一个视图来显示允许的信息。

创建视图 emp_some_details 为(从 employee 中选择 empID、name、skill、DOB);

程序

下面是为上述示例在 SQL 中创建表、视图和同义词的程序 -

create table employee (empID integer primary key, name varchar2(30), skill varchar2(30), salary number(20), DOB datetime);
insert into employee values(100,'AAA','JAVA',30000,2020-08-20);
insert into employee values(101,'BBB','PHP',35000,2020-07-02);
select * from employee;

create view [salary_hide] as select empID,name,skill,DOB from employee ;
select * from salary_hide;

输出

您将获得以下输出 -

100|AAA|JAVA|30000|1992
101|BBB|PHP|35000|2011
100|AAA|JAVA|1992
101|BBB|PHP|2011

视图的优点

使用视图的优点如下 -

  • 它可以访问来自表、多个表、视图、多个视图或这些组合的数据。

  • 视图连接到其基本表的数据。

  • 提供了一种安全的数据访问机制。

可以使用 CREATE OR REPLACE VIEW 语句更新视图。

语法如下 -

sql create or replace view view-name As
SELECT column1, column2, ...
FROM table_name
WHERE condition;

要删除视图,我们可以使用 drop view 命令 -

DROP view view-name;

同义词用作分配给表或视图的另一个名称。它可用于隐藏实际实体的原始名称和所有者。它通过允许公众访问同义词来扩展表的范围。

更新于: 2021-07-03

3K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.