Oracle学习记录

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。Oracle学习记录,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

创建和管理Oracle用户

-- 管理员账户使用方案.对象
select * from scott.emp
-- 给scott用户赋连接权限
grant create session to scott
-- 撤销scott用户的连接权限
revoke create session from scott
-- 创建用户zx,密码为123456
create user zx identified by 123456

DML(创建和管理表)

-- 创建一张表
create table s_user(
       id number(6) not null primary key,
       name varchar(10),
       age number(10)
       )    

Oracle实现Sequence主键增长策略

-- Oracle主键自增使用Sequence来实现: 注意两个点: 1,增长的步长   2,开始的数值
create sequence user_seq increment by 1 start with 001

-- 查看当前用户下所有的序列
SELECT * FROM USER_SEQUENCES

-- Sequence的两种用法
select user_seq.nextval from dual
select user_seq.currval from dual

-- 这里面用Sequence来代替主键自增(DML)
select * from s_user
insert into s_user(id,name,age) values(001,'dawn',20)
insert into s_user(id,name,age) values(user_seq.nextval,'dawn',20)

数据库对象管理 (DDL)

-- 添加列
alter table s_user add gender varchar(5)default 'man'

-- 修改列时列的数据必须为null
alter table s_user add birthday date
alter table s_user modify birthday number(10)

-- 给列进行改名
alter table s_user rename column birthday to birth

-- 删除列
alter table s_user drop column birth

-- 给表重命名
rename s_user to t_user
select * from t_user

Oracle的回收站

-- Oracle中删除表时并没有直接删除,只是放置到“回收站”
SHOW PARAMETER RECYCLEBIN
SHOW RECYCLEBIN;

-- 约束管理 用t_user和s_user两个表举例子
create table s_user(
       id number(6) not null primary key,
       name2 varchar(10),
       age2 number(10)
       )  

Oracle中的约束

select * from s_user
-- 添加外键约束
select * from t_user
-- 添加外键约束
alter table s_user add foreign key(id) references t_user(id)

Oracle中的索引

-- 查看所有的系统权限
select * from dba_sys_privs
-- 查看当前用户的系统权限
select * from user_sys_privs
-- 查看当前用户对象权限
select * from user_tab_privs

-- 创建和删除索引
create index i_user on t_user(name)
drop index 

Oracle中的视图

视图的优点:

  • 1:加快查询效率
  • 2:只是暴露一部分数据,保证数据安全性
-- 创建和删除视图,视图只是保存创建视图的逻辑,不保存视图所查的所有数据
create or replace view emp_view2 as (select e.ename,e.job from scott.emp e)
-- 查询所有数据
select * from emp_view2
select * from scott.emp
-- 修改视图数据的时候也会修改原表的数据
update emp_view2 set ename='张三' where job='MANAGER'

同义词

--  同义词,相当于给 方案名.对象名 起一个外号
CREATE SYNONYM A_TEST FOR scott.emp;
select * from A_TEST
drop synonym A_TEST

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/202510.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!