当前位置:首页 » 数据仓库 » 数据库同义词只能查询吗
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库同义词只能查询吗

发布时间: 2023-05-01 05:19:16

⑴ oracle数据库用户权限不够,只能用同义词查到表,现在想看下表的关联怎么办

不建议对表进行关联,这样会产生过多的异缓逗常,关联扰竖卖其实好处主要是防止垃圾数据的出现,表关联查看sql
--查询表STAFF的主键和外键,CONSTRAINT_TYPE='P'为主键,='R'为外键
select a.INDEX_NAME 索引名,
b.TABLE_NAME 主键表名,
a.TABLE_NAME 外键表名,
CONSTRAINT_TYPE,
CONSTRAINT_NAME 约束名
from all_indexes a, all_constraints b
where b.OWNER = 'SM'
and b.TABLE_NAME = 'STAFF'
AND b.CONSTRAINT_TYPE IN ('P', 'R'纤灶)
and b.R_CONSTRAINT_NAME = a.INDEX_NAME(+)

⑵ cnki数据库具有查看同义词功能

你问的是cnki数据库具有查看同义词功能吗?有的。
CNKI采用自主开发并具有国际领先水平的数字图书馆技术弊闷,建成了世界上全文信息量规模最大的CNKI数字搭哪图书馆。CNKI数据库进行检索的时候可以提供同义词表。
国家知识基础设施(,NKI)的概念由世界银行《1998年度世界发展报告知卜码》提出。

⑶ 在检索式编写过程中,写同义词的目的是什么如何查找同义词

提态哗兆高检索性能。具体如下:芦老
1、利用数据库的同义词选择功能。
2、利用搜索引擎帆租寻找同义词。
3、从数据库检索结果中寻找同义词。

⑷ oracle中什么是同义词什么是Public 的同义词

alias(别名),比如把user1.table1在user2中建一个同义词table1
create synonym table1 for user1.table1;
这样当你在user2中查select * from table1时就相当于查select * from user1.table1;
优点自己总结吧。

例如:
在oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果我们想使用数据库,我们就必须得有权限,但是如果是别人将权限授予了我们,我们也是能对数据库进行操作的,但是我们必须要已授权的表的名称前键入该表所有者的名称,所以这就是比较麻烦的,遇到这种情况,我们该怎么办呢?创建个同义词吧!这样我们就可以直接使用同义词来使用表了。
对另一个数据对象而言同义词是一个别名。public同义词是针对所有用户的,相对而言private同义词则只针对对象拥有者或被授予权世睁限的账户。在本地数据库中同义词可以表示表、视图、序列、程序、函数或包等数据对象饥返弊,也可以通过链接表示另一个数据库的对象。

创建同烂族义词语法如下:

CREATE [PUBLIC] SYNONYM synonym_name FOR [schema.] object[@db_link];

例:

CREATE PUBLIC SYNONYM policies FOR poladm.policies@prod;

CREATE SYNONYM plan_table FOR system.plan_table;

⑸ 同义词的在数据库中的概念

同义词在数据库中的概念:是指向其它数据库表的数据库指针。

同义词有两种类型:私有和公共。念衫乎私有的同义词是在指定的模式中创建并且只有创建者使用的模式访问。公共同义词是由public指定的模式访问,所有数据库模式都可以访问它。

作用:同义词相当于模式对象的别仔悉名,起着连结数据库模式对象和应用程序的作用塌拍。

⑹ SQL之同义词

【十四】同义词

14.1 作用

从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系。

14.2公有同义词

同义词通常是数据库对象的别名;公有同义词一般由DBA创建,使所有用户都可使用;创建者需要create public synonym权限。

示例:

14.3私有同义词

一般是普通用户自己建立的同义词,创建者需要create synonym 权限。

查看同义词的视图:dba_synonyms

删除私有同义词:drop synonym 同义词名

删除公有同义词:drop public synonym 同义词名

14.3 同义词的要点

1)私有同义词是模式对象,一般在自己的模式中使用,如其他模式使用则必须用模式名前缀限定。

2)公有同义词不是模式对象,不能用模式名做前缀。

3)私有和公有同义词同名时,如果指向不同的对象,私有同义词优先。

4)引用的同义词的对象(表或视图)被删除了,同义词仍然存在,这同视图类似,重新创建该对象名,下次访问同义词时自动编译。

the end !!!

@jackman 共筑美好!

⑺ 哪一个数据库有"查看同义词"功能

数据库同义词,是给对象创建一个别名似的? 这巧做备个是Oracle数据库的概念
Oracle的同义词(synonyms) 从字面上理解就胡槐是别名的意思,和视图的功能类似,就是一种映射关系。它可以节省大量的数据库孝毁空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库 的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能。同义词是数据库对象的一个别名,经常用于简化对象访 问和提高对象访问的安全性。在使用同义词时,Oracle数据库将它翻译成对应方案对象的名字。与视图类似,同义词并不占用实际存储空间,只有在数据字典 中保存了同义词的定义。
在cux模式下访问视图的时候加上apps,也可以在cux用户创建对应的同义词:
CREATE SYNONYM CUX.CRC_028_FREIGHT_COLLECT_V FOR APPS.CRC_028_FREIGHT_COLLECT_V

⑻ 数据库里面同义词、序列是什么东西

这个应该是oracle里的吧?

同义词 synonym
相当于alias(别名),比如把user1.table1在user2中建一个同义词table1
create synonym table1 for user1.table1;
这样当你在user2中查select * from table1时就相当于查select * from user1.table1;

序列比较复杂,

在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。
1、Create Sequence
你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限,
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10;

一旦定义了emp_sequence,你就可以用CURRVAL,NEXTVAL
CURRVAL=返回 sequence的当前值
NEXTVAL=增加sequence的值,然后返回 sequence 值
比如:
emp_sequence.CURRVAL
emp_sequence.NEXTVAL

可以使用sequence的地方:
- 不包含子查询、snapshot、VIEW的 SELECT 语句
- INSERT语句的子查询中
- NSERT语句的VALUES中
- UPDATE 的 SET中

可以看如下例子:
INSERT INTO emp VALUES
(empseq.nextval, 'LEWIS', 'CLERK',7902, SYSDATE, 1200, NULL, 20);

SELECT empseq.currval FROM DUAL;

⑼ 维普和万方数据库都具有查看同义词的功能

维普和万方数据库都具有查看同义词的功能。根据查询相关资料信息,维普态伍和万方数据库的扩展功能下,都有查看同义词喊闭肆功能。维普和郑轿万方数据库能查询出有关检索词的同义、近义词。

⑽ 同义词的在数据库中的概念

同义词有两种类型:私有(private)和公共(public)。私有的同义词是在指定的模式中创建并且只有创建者使用的模式访问。公共同义词是由public 指定的模式访问,所有数据库模式(用户)都可以访问它。
对于同一服务器上的不同数据库,我们可以使用Synonym,将其他数据库中的表或view或sprocs及udf在本数据库中映射别名。这样,就可以不用更改连接字符串,而在当前对话数据库的情况下,获取其他数据库的数据,并对它进行,查询,更新,删除和插入工作。
(2)同义词的作用
(a) 多用户协同开发中,可以屏蔽对象的名字及其持有者。 如果没有同义词,当操作其他用户的表时,必须通过user名.object名的形式,采用了同义词之后就可以隐蔽掉user名,当然这里要注意的是:public同义词只是为数据库对象定义了一个公共的别名,其他用户能否通过这个别名访问这个数据库对象,还要看是否已经为这个用户授权。 (b) 为用户简化sql语句。如果自己建的表的名字很长,可以为这个表创建一个同义词来简化sql开发。 (c)为分布式数据库的远程对象提供位置透明性。