oracle给表建同义词,Oracle中的序列,同义词

阅读: 评论:0

oracle给表建同义词,Oracle中的序列,同义词

oracle给表建同义词,Oracle中的序列,同义词

什么叫序列:

1:定义:

仅向前的数字变量(和SQL中的自动编号有点像 identity(1,2)  )

2:如何定义一个序列

格式:

create sequence

start with

increment by

[maxvalue  值]

[minvalue  值]

[cycle 当到达最大值的时候,将继续从头开始]

example:

create sequence mySeq

start with 1

increment by 2

maxvalue 40

minvalue 1

cycle

3:怎么去取序列数据:

currval--->curenValue

nextVal-->NextVlaue

example:

Val from dual

注意一点:currval只有当nextVal执行一次以后才可以用.

在创建表的时候,可以使用序列.

具体例子:

create table 学生基本信息表

(

StuID int,

StuName varchar2(20)

)

insert into 学生基本信息表 Val,'AA')

4:如何修改序列:

alter sequence mySeq maxValue 500

注意:不能改start with,其他随便改(设置minValue值的时候不能大于当前值)

5:如何查看某个表空间所有序列:

select * from user_sequences

6:如何删除:

drop sequence 序列名称

同义词:

就是给Oracle对象取一个别名,并做为数据库对象永久保存在Oracle数据库.

特别注意一点:同义词一但创建,就不能修改   只能删除

1:分类:

私有同义词:普通用户(scott)创建,并且只有该用户可以用.

公有同义词:由DBA。SYSTEM。SYS创建.任何用户都可以访问同义词

2:特点:

代表Oracle对象的全部.不能代表一个对象的某一部分.但是视图却可以代表对象的一部分.

对同义词进行数据操作,将影响到某一个跟同义词关联的对象

对某一个具体的Oracle对象进行数据操作的时候,将影响到与他关联的同义词。

表一但重命名   同义词不会改变  还是在数据库存在的.

表一但删除     同义词也还在   但同义词数据却不在

3:创建同义词的格式:

create [public] synonym 同义词名称 for Oracle某一个具体对象

4:查看所有的同义词:

select * from user_synonyms

5:如何删除同义词:

drop synonym 同义词名称

自己写的一个例子

我在用户AA中建一个同义词:

CREATE   SYNONYM   "AA"."MYTONGYI"

FOR   "AA"."AATEST_1"

其中   AATEST_1   是一个数据库表。

然后有用户BB   :

执行下列语句:

grant   select   on       MYTONGYI   to   BB;

commit;

那么用BB登录执行下列语句:

select   *   from   AA.MYTONGYI

视图与同义词的区别:

A:同义词是实实在在的 而视图是虚的

B:同义词是代表对象的全部    不能代表一部分   而视图既可以是全部  也可以是一部分

C:同义词一但创建不能修改     视图却可以修改

D:同义词只能代表一个对象  ,而视图可以关联多个

本文发布于:2024-01-28 21:23:33,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170644821910378.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:同义词   序列   oracle   Oracle
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23