Oracle基本操作(二)
admin
2023-04-16 21:01:43
0

oracle数据库的基本操作;

  • 创建表空间
  • 插拔数据库
  • 创建用户
  • 创建数据表(事务)
  • 索引
  • 视图
  • 序列
  • 同义词

一,创建表空间
例;

create tablespace school //创建表空间school
2 datafile '/oracle/app/oracle/oradata/school01.dbf' //指定表空间文件存放位置
3 size 10m autoextend on; //指定大小,空间可以扩容

Oracle基本操作(二)Oracle基本操作(二)
调整表空间大小
1,调整大小

SQL> alter database datafile
2 '/oracle/app/oracle/oradata/school01.dbf'
3 resize 80m;

数据库已更改。

2,添加文件

SQL> alter tablespace school
2 add datafile
3 '/oracle/app/oracle/oradata/school02.dbf'
4 size 20m autoextend on;

表空间已更改。

Oracle基本操作(二)
表空间权限

SQL> alter tablespace school read only; //修改为只读权限

表空间已更改。

SQL> alter tablespace school read write; //权限修改为读写(默认)

表空间已更改。

删除表空间

SQL> drop tablespace school including contents;

表空间已删除。

Oracle基本操作(二)

二,插拔数据库(CDB与PDB转换)

SQL> show con_name //查看当前所在的容器
SQL> show pdbs; //查询数据库的所有容器

Oracle基本操作(二)
将当前数据库CDB转换为PDB

CDB:默认的数据库
PDB:容器型数据库
SQL> alter pluggable database orclpdb open; //修改可插拔库orclpdb打开状态

插接式数据库已变更。

SQL> alter session set container=orclpdb; //CDB下切换会话到PDB中

会话已更改。
SQL> shutdown immediate //在PBD中关闭插拔数据库
插接式数据库已关闭。

SQL> startup //在PBD中打开插拔数据库
插接式数据库已打开。

Oracle基本操作(二)
将PDB切换为CDB

SQL> alter session set container=cdb$root; //切换会话到CDB

Oracle基本操作(二)

三,创建用户

创建用户必须指定一个默认的表空间
在12 C版本,CDB中创建用户,用户名格式为:c##用户名
PDB中创建用户,用户名格式为:用户名
SQL> create user c##jack
2 identified by abc123 //指定密码
3 default tablespace users //指定默认表空间
4 temporary tablespace temp //指定临时表空间
5 quota unlimited on users; //不进行限额
更改用户密码
SQL> alter user c##jack identified by jack123;

删除用户
SQL> drop user c##jack cascade;

Oracle基本操作(二)Oracle基本操作(二)
四,创建数据表(插入数据,事务)

SQL> create table info
2 (
3 id number(4),
4 name varchar2(10),
5 score number(5,2),
6 riqi date
7 );

Oracle基本操作(二)
五,事务

在oracle中默认开启事务不进行提交。因此在进行数据操作时,一定要记得提交,或者设定为自动提交。否则数据不能写入硬盘中。
SQL> insert into info values (1,'lisi',80,to_date('2018-08-26','yyyy-mm-dd'));
SQL> set autocommit on; //设定自动提交,回滚无效

Oracle基本操作(二)Oracle基本操作(二)Oracle基本操作(二)
六,索引

B树索引

create index 索引名称 on 表名(列名)

唯一索引/非唯一索引

create unique index 索引名称 on 表名(列名)

反向索引

create index 索引名称 on 表名(列名)reverse

位图索引

create bitmap index 索引名称 on 表名(列名)

其他索引

create index 索引名称 on 表名(upper(列名)) //大写函数索引

查看索引

select index_name,index_type,table_name,tablespace_name from user_indexes;

查看索引相关信息

select index_name,table_name,column_name from user_ind_columns where index_name like 'EMP%';

重建索引

alter index 索引名称 rebuild;

alter index 索引名称 rebuild tablespace 表空间

合并索引碎片

alter index 索引名称 coalesce;

删除索引

drop index 索引名称

Oracle基本操作(二)
Oracle基本操作(二)
七,视图

创建视图要注意权限问题
SQL> create view vinfo as select from info; //创建视图
SQL> select
from vinfo; //查询视图
SQL> drop view vinfo; //删除视图

Oracle基本操作(二)Oracle基本操作(二)
物化视图

首先要通过管理员帐号为c##jack用户赋予权限
SQL> grant create materialized view to c##jack; //创建物化视图权限
SQL> grant query rewrite to c##jack; //查询,重写权限
SQL> grant create any table to c##jack; //创建所有表权限
SQL> grant select any table to c##jack; //查询所有表权限

Oracle基本操作(二)
创建物化视图之前需要创建物化视图日志

create materialized view log on info;

Oracle基本操作(二)
创建物化视图

SQL> create materialized view mtview
2 build immediate //创建完成立马生成新数据
3 refresh fast //刷新数据
4 on commit //提交
5 enable query rewrite //开启查询重写功能
6 as
7 select * from info;

SQL> drop materialized view mtview; //删除物化视图

Oracle基本操作(二)
八,序列

oracle中自增列需要单独进行创建,然后插入数据时进行调用。
创建序列
SQL> create sequence id_seq
2 start with 10 //初始值
3 increment by 1 //增量
4 maxvalue 1000 //最大值
5 nocycle //肺循环
6 cache 50; //缓存

插入数据时调用序列
SQL> insert into info values (id_seq.nextval,'tom',80,to_date('2018-04-10','yyyy-mm-dd'));
查询序列当前值
SQL> select id_seq.currval from dual;
更改序列
SQL> alter sequence id_seq cache 30;
查看序列信息
SQL> select sequence_name,increment_by,cache_size from user_sequences;
删除序列
SQL>drop sequence id_seq;

Oracle基本操作(二)Oracle基本操作(二)Oracle基本操作(二)
九,同义词

俗称别名,外号,可以提高数据安全可靠性。
私有同义词:只在当前用户可以使用
公有同义词:所有数据库用户都可以使用
SQL> create synonym pr_info for info; //创建私有同义词
SQL> create public synonym pub_info for info; //创建共有同义词
删除同义词
SQL> drop synonym pr_info;
SQL> drop public synonym pub_info;

Oracle基本操作(二)
Oracle基本操作(二)

相关内容

热门资讯

【今日要闻】“毛豆大厅拼三张到... 【今日要闻】“毛豆大厅拼三张到底有挂吗?”(必胜开挂神器)您好,毛豆大厅拼三张这个游戏其实有挂的,确...
单膝跪地勇救脑梗登山客 黄河科... “要不是这位同学,后果不堪设想!”12月24日上午,在黄河科技学院职业技术学院会议室内,被救者王叔的...
俄年度热词聚焦“胜利”“人工智... 新华社莫斯科12月28日电2025年即将结束,俄罗斯多个机构和团体分别推出本国年度热词榜单,上榜热词...
关于微信占存储空间的几个误解 (来源:JSTV荔枝视频) 转自:JSTV荔枝视频 #教你1招快速深度清理手机缓存#【#关于微信占存...
今日重大通报“天天爱麻将究竟有... 今日重大通报“天天爱麻将究竟有挂吗?”(必胜开挂神器)您好,天天爱麻将这个游戏其实有挂的,确实是有挂...
【第一资讯】“阿拉斗牌辅助器?... 网上科普关于“阿拉斗牌有没有挂”话题很是火热,小编也是针对阿拉斗牌作*弊开挂的方法以及开挂对应的知识...
玩家攻略科普“牌乐门到底是不是... 家人们!今天小编来为大家解答牌乐门透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里买很多...
【第一资讯】“决胜奕福是不是有... 您好:决胜奕福这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款游戏...
今日重大消息“新版九哥牛牛究竟... 网上科普关于“新版九哥牛牛有没有挂”话题很是火热,小编也是针对新版九哥牛牛作*弊开挂的方法以及开挂对...
我来教教您“可乐麻将开挂神器?... 网上科普关于“可乐麻将有没有挂”话题很是火热,小编也是针对可乐麻将作*弊开挂的方法以及开挂对应的知识...