文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Oracle数据库对象的使用详解

2022-07-28 16:00

关注

一、序列

序列可以使用在数据库表的自动增长列中来用,假如我们的学生表的id想从1开始,然后自动增长,每次增加2,也就是学生id是1、3、5、7、9这种的,我们就可以配合序列来使用
序列有以下属性
sequence_name:序列名称
min_value:当前序列的最小值
max_value:当前序列的最大值
increment_by:每次序列增长的步长
cy:是否为循环序列
or:是否需要排序
cache_size:缓存个数,默认为20个
last_number:最后的数值
nextval:取得序列下一个内容,每调用一次序列的值都会增长
currval:表示取得序列的当前内容,每一次调用序列不会增长

1、创建一个序列

create sequence myseq;

2、向学生表插入一条数据,学生id使用myseq序列

insert into student(id,name) values (myseq.nextval;'张三');

3、改变myseq序列的步长,每步增加2

create sequence myseq increment by 2;

4、改变myseq序列的开始值为10000

create sequence myseq increment by 2 start with 10000;

5、创建一个循环序列,并且不使用缓存

如果我们希望某一列的数据只是1到9的数据,那么我们可以使用循环序列来操作

create sequence myseq
minvalue 1 maxvalue 9
cycle nocache;

二、同义词的作用

同义词可以将一个模式的表给另一个模式来访问。

1、将scott用户下的student表同义给sys用户使用

create sysnoym student for scott.emp;

2、将scott用户下的student表同义给所有用户使用

create public sysnoym student for scott.emp;

三、视图的定义及使用

视图是为了简化复杂查询的,视图是一张虚拟表,并不存储数据,但是数据都来源于真实表中

1、创建一个视图,从学生表中名字为‘张三’的学生中取

create view studentview as select * from student where name = '张三';

2、查询学生视图

select * from studentview;

3、更新学生视图,将name为‘张三’的年龄更新为20

update studentview set age = 20 where name = '张三';

这个时候我们发现真实表student中张三的年龄也被修改了,所以这样修改视图会影响真实表的数据,那么我们接下来创建一个视图让他修改后不影响真实表。

4、创建一个视图,从学生表中名字为‘张三’的学生中取,并且修改视图不能影响原来真实表的数据

create or replace view studentview as 
select * from student where name = '张三'
with check option; 

5、创建一个视图,从学生表中名字为‘张三’的学生中取,并且视图设置为只读

create or replace view studentview as 
select * from student where name = '张三'
with read only;

四、索引的定义及使用

1、创建一个学生表,并给name建立索引

create index name_index on student (name);

五、总结

这里的相关内容还没有整理完毕,文章后面持续更新,建议收藏。

文章中涉及到的命令大家一定要像我一样每个都敲几遍,只有在敲的过程中才能发现自己对命令是否真正的掌握了。

到此这篇关于oracle数据库对象的使用的文章就介绍到这了,更多相关Oracle数据库对象内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯