oracle同义词讲解.docx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
oracle同义词讲解

什么是同义词同义词是Oracle数据库中对象的别名,我们知道在Oracle数据库中对象包括表、视图、物化视图(Oracle10g)、触发器、序列号、函数、过程以及Java对象等,Oracle可以为这些对象创建同义词。使用同义词的主要目的是方便用户访问属于其他用户的数据库对象,或出于安全目的,因为同义词名字具有随机性,没有限制,这样就隐藏了创建同义词的原始对象的信息。同义词可以是公有的,也可以是私有的。顾名思义,公有同义词是任何用户都可以使用的,而私有同义词只有指定的用户可以使用,没有授权其他用户无法访问某一个用户的私有同义词创建公有同义词公有同义词对数据库的所有用户有效,一般是某种应用的所有者创建如过程或程序包的公有同义词,以便其他用户可以使用它们创建公有同义词SQL create public synonym department for scott.dept; 使用公有同义词SQL conn system/oracleSQL select * 2 from department; 创建私有同义词公有同义词对数据库的所有用户有效,一般是某种应用的所有者创建如过程或程序包的公有同义词,以便其他用户可以使用它们创建私有同义词SQL conn system/oracle SQL create synonym d for scott.dept; 使用私有同义词SQL conn system/oracleSQL select * 2 from d; 其他用户使用私有同义词的示例SQL conn scott/oracleSQL select * 2 from d; 删除同义词删除同义词的指令很简单,使用DROP关键字,但是删除公有同义词时必须使用PUBLIC关键字,而删除私有同义词时就不需要。删除公有同义词department SQL drop public synonym department; 删除私有同义词d 。SQL conn system/oracleSQL drop synonym d;切换用户模式如果当前在一个用户模式下,而需要使用另一个用户模式下的对象,则可以在当前用户模式下切换用户,如当前用户是SYSTEM。示例:使用SYSTEM模式登录数据库 SQL conn system/oracle 将当前模式切换到SCOTT用户。SQL alter session set current_schema =scott; 什么是序列号Oracle使用序列生成器自动产生用户可以在事务中使用的唯一序列号,该序列号是一个整数类型数据,序列生成器主要完成在多用户环境下产生唯一的数字序列,但是不会造成额外的磁盘I/O或事务锁。简单的说序列号是Oracle数据库的一个对象,该对象产生唯一序列号。使用序列号的优点在不使用序列号时,如果多个用户同时向EMP表中插入一条员工记录,用户必须等待以得到下一个可用的员工号,而一旦使用序列号则用户无需相互等待就可以得到下一个可用的员工号。序列生成器会自动为每个用户创建正确的员工编号Oracle的序列号有如下特点:序列号是独立于表的对象,由Oracle自动维护。序列号可以对多个用户共享使用,即同一个序列对象供多个表使用且相互独立。在SQL语句中使用序列号就可以使用它产生的序列号。 创建序列号的语法创建序列号的语句格式如下:CREATE SEQUENCE sequence_name[START WITH n][INCREMENT BY n][{MAXVALUE n|NOMAXVALUE}][{MINVALUE n|NOMINVALUE}][{CACHE n|NOCACHE}][{CYCLE n|NOCYCLE}]下面依次解释各参数的含义:START WITH n:序列号初始值,默认值为1。INCREMENT BY n:序列号的步进幅度,默认步进幅度为1。MAXVALUE n:定义序列号的最大值。NOMAXVALUE:不设置序列号的最大值,但是我们知道计算机对于数据的表达是有限的,实际上这个值当序列号是升序时为1027,序列号为降序时为-1。MINVALUE n:定义序列号的最小值。NOMINVALUE:不定义序列号的最小值,但是和参数NOMAXVALUE对应该值对于升序的序列号最小值为1,对于降序的序列号的最小值为-1026CACHE n:Oracle服务器会预分配n个序列号并保保存在内存中。NOCACHE:Oracle服务器不会预分配序列号并保保存在内存中。CYCLE n:定义序列号在达到最大值或最小值后,将继续产生序列号。NOCYCLE:定义序列号在达到最大值或最小值后,不再产生序列号。创建序列号准备工作1.伪列:currval和nextval2.创建一个表employeesSQL create

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档