数据库的同义词
㈠ 有没有指代一个数据库的同义词
维普资讯的《中文科技期刊数据库》高级检索的扩展功能有查看同义词、 同 ( 名/合着作者 )( 、 查看分类表 )( 查看相关机构 ) 、 、期刊导航等 5 个。
㈡ 同义词的在数据库中的概念
同义词有两种类型:私有(private)和公共(public)。私有的同义词是在指定的模式中创建并且只有创建者使用的模式访问。公共同义词是由public 指定的模式访问,所有数据库模式(用户)都可以访问它。
对于同一服务器上的不同数据库,我们可以使用Synonym,将其他数据库中的表或view或sprocs及udf在本数据库中映射别名。这样,就可以不用更改连接字符串,而在当前对话数据库的情况下,获取其他数据库的数据,并对它进行,查询,更新,删除和插入工作。
(2)同义词的作用
(a) 多用户协同开发中,可以屏蔽对象的名字及其持有者。 如果没有同义词,当操作其他用户的表时,必须通过user名.object名的形式,采用了同义词之后就可以隐蔽掉user名,当然这里要注意的是:public同义词只是为数据库对象定义了一个公共的别名,其他用户能否通过这个别名访问这个数据库对象,还要看是否已经为这个用户授权。 (b) 为用户简化sql语句。如果自己建的表的名字很长,可以为这个表创建一个同义词来简化sql开发。 (c)为分布式数据库的远程对象提供位置透明性。
㈢ oracle数据库中循环同义词,怎么处理
1、 当用程序连接或者用plsql查询同义词时,如果出现ora-01775:同义词的循环链这样的问题。
一般是因为存在同义词,但同义词没有相应的对象。
2、 先查有没有循环的同义词。
select * from dba_synonyms
where table_owner='TEST'
and synonym_name<>table_name;
没有记录。
3、 再查同义词没有对象的数据库对象
select * from dba_synonyms
where table_owner='TEST'
and
synonym_name in
(select a.synonym_name from dba_synonyms a where a.table_owner='TEST'
minus
select object_name from user_objects)
4、 把查询出来的结果进行查询表
select * from DRILL_PRESON
如果该同义词没有相应的对象,则会包ora-01775的错误
5、 把这个同义词删除
drop public synonym DRILL_PRESON
㈣ 数据库,系统一般可以用什么词代替
用什么语言和开发什么程序有关如果开发底层系统、通讯方面,首选C++开发BS系统,首选JAVA、.net数据库是必备的知识,主要是sql语句的使用,至于使用什么数据库就看2度x开发时候的具体情况来定补充:编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到相应结果的过程。为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思路、方法、和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算机之间交流的过程就是编程。编程:设计具备逻辑流动作用的一种"可控体系"【注:编程不一定是针对计算机程序而言的,针对具备逻辑计算力的体系,都可以算编程】例子:①比如编写一段代码程序②编写一个控制设备体系
㈤ 数据库里面同义词、序列是什么东西
这个应该是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;
㈥ 同义词在数据库中起什么作用
数据库中的同义词,可以相当于文件系统的快捷方式理解,例如表和视图的同义词,完全可以直接当表和视图使用。
㈦ oracle同义词是什么意思
相当于alias(别名),比如把user1.table1在user2中建一个同义词table1
create synonym table1 for user1.table1;
这样当你在user2中查select * from table1时就相当于查select * from user1.table1;
优点自己总结吧。
例如:
在oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果我们想使用数据库,我们就必须得有权限,但是如果是别人将权限授予了我们,我们也是能对数据库进行操作的,但是我们必须要已授权的表的名称前键入该表所有者的名称,所以这就是比较麻烦的,遇到这种情况,我们该怎么办呢?创建个同义词吧!这样我们就可以直接使用同义词来使用表了。
㈧ 维普数据库的同义词检索在哪儿
传统检索左上角就是同义词检索
㈨ oracle同义词
Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系。它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能。同义词是数据库对象的一个别名,经常用于简化对象访问和提高对象访问的安全性。在使用同义词时,Oracle数据库将它翻译成对应方案对象的名字。与视图类似,同义词并不占用实际存储空间,只有在数据字典中保存了同义词的定义
创建同义词
CREATE SYNONYM SYSN_TEST FOR TEST;
查看同义词
SELECT * FROM USER_SYNONYMS
使用同义词
SELECT * FROM SYSN_TEST;
删除同义词
DROP SYNONYM SYSN_TEST;
㈩ 哪一个数据库有"查看同义词"功能
数据库同义词,是给对象创建一个别名似的? 这个是Oracle数据库的概念
Oracle的同义词(synonyms) 从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系。它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库 的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能。同义词是数据库对象的一个别名,经常用于简化对象访 问和提高对象访问的安全性。在使用同义词时,Oracle数据库将它翻译成对应方案对象的名字。与视图类似,同义词并不占用实际存储空间,只有在数据字典 中保存了同义词的定义。
在cux模式下访问视图的时候加上apps,也可以在cux用户创建对应的同义词:
CREATE SYNONYM CUX.CRC_028_FREIGHT_COLLECT_V FOR APPS.CRC_028_FREIGHT_COLLECT_V