关于我对Oracle的一些认知
1,数据库的概述
数据库(database、db)指的是长期存在计算机内、有组织、可共享的、大量数据的集合。数据是按照特定的数据模型来组织、存储在数据库中的。
其中数据库分为关系型数据库和非关系型数据库。
关系型数据库:它是将数据以关联关系或者二维表的形式存储的数据库。
如 oracle、mysql、db2、sql server、等;
非关系型数据库:一般是以键值对方式存储数据的数据库。
如 redis、hadoop(hbase) 等
2,Oracle数据库的概述
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。
数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS
关系数据库管理系统(Relational Database Management System:RDBMS)是指包括相互联系的逻辑组织和存取这些数据的一套程序 (数据库管理系统软件)。关系数据库管理系统就是管理关系数据库,并将数据逻辑组织的系统。
3,创建用户和表空间
表空间是数据库中最大的逻辑单位,一个 Oracle 数据库至少包含一个表空间,就是名为SYSTEM的系统表空间
每个表空间是由一个或多个数据文件组成的,一个数据文件只能与一个表空间相关联。
表空间的大小等于构成该表空间的所有数据文件大小之和。
默认包含如下表空间(从v$tablespace中查看):SYSTEM、SYSAUX、TEMP、UNDOTBS1、USERS
SYSTEM是系统表空间,存放系统的最基本的信息,如果SYSTEM表空间坏掉,Oracle将无法启动。
SYSAUX从10g中引入,作为SYSTEM的辅助表空间,用以减少SYSTEM表空间的负荷 。以前其他表空间中的一些组件,现在放到SYSAUX表空间中了
TEMP是临时表空间,当排序不能在分配的空间中完成时,就会使用磁盘排序的方式,即在Oracle实例中的临时表空间中进行。
UNDOTBS1是撤销表空间,是UNDO类型的表空间,保存用户进行DML操作中,修改前的数据。
USERS是数据库默认的永久表空间。
查询当前用户默认表空间
select default_tablespace from user_users;
创建表空间:
create tablespace tablespace_name datafile '表空间文件路径' size 1G autoextend on next 100M maxsize unlimited;
create tablespace:创建表空间关键字
tablespace_name:表空间名称
datafile:指定表空间文件(一般指向oracle安装根目录下oradata/数据库实例名/.dbf)
size 1G:指定表空间文件的初始大小,大小单位可以是G、M、K等
autoextend on next 100M:autoextend表示表空间大小自动扩展,on next 100M指定每次表空间满了之间扩展的大小
maxsize unlimited:maxsize指定表空间的最大存储值,unlimited表示不限制表空间的最大值(也就是只要硬盘不满,表空间就可以一直扩展)
创建一个test1的表空间(必须使用管理员用户system, sys )
create tablespace test1
datafile 'D:\app\Administrator\oradata\orcl\test1data.dbf'
size 1G
autoextend on next 100M
maxsize unlimited;
--修改表空间
ALTER database 数据库名
DATAFILE 'D:\app\Administrator\oradata\orcl\test1data.dbf' AUTOEXTEND
ON NEXT 200M MAXSIZE 2G
--修改原有的数据文件大小
alter database 数据库名datafile 'D:\app\Administrator\oradata\orcl\test1data.dbf' resize 100M;
--为表空间增加新的数据文件
alter database 数据库名 表空间名 add datafile 数据文件 size 大小
临时表空间
当排序不能在分配的空间中完成时,就会使用磁盘排序的方式,即在Oracle实例中的临时表空间中进行。
创建临时表空间语法:
create temporary tablespace tablespace_name tempfile '表空间文件路径' size 1G autoextend on next 100M maxsize unlimited;
temporary:表明创建的表空间是临时表空间
tempfile:指定临时表空间文件
创建临时表空间(用管理员用户)
create temporary tablespace test1temp
tempfile 'D:\app\Administrator\oradata\orcl\test1temp.dbf'
size 1G autoextend on next 100M maxsize unlimited;
创建用户语法:
create user user_name
default tablespace tablespace_name
temporary tablespace temptablespace_name
identified by password;
create user:创建用户关键字
user_name:用户名
default tablespace tablespace_name:指定用户的默认表空间 tablesapce_name表空间名(如果省略默认使用users表空间)
temporary tablespace temptablespace_name:指定用户的默认临时表空间,temptablespace_name临时表空间名(如果省略默认使用temp表空间)
identified by password:identified by 指定用户的密码,password用户密码
创建一个test1用户
create user test1
identified by test1
default tablespace test1
temporary tablespace test1temp ;
修改用户
alter user user_name default tablespace tablespace_name temporary tablespace temptablespace_name identified by password;
权限
权限指的是执行特定命令或访问数据库对象的权利
权限有两种类型,系统权限和对象权限
系统权限允许用户执行某些数据库操作,如创建表就是一个系统权限
对象权限允许用户对数据库对象(如表、视图、序列等)执行特定操作
GRANT 命令可用于为用户分配权限或角色
系统权限如:
GRANT CREATE SESSION TO test1; --此系统权限允许用户连接到数据库上
GRANT CREATE TABLE TO test1; --此系统权限允许用户创建表
GRANT UNLIMITED TABLESPACE TO test1; --此系统权限允许test1用户任意使用表空间
对象权限如:
GRANT SELECT ON SCOTT.EMP TO test1; --允许用户查询 EMP 表的记录
GRANT UPDATE ON SCOTT.EMP TO test1; --允许用户更新 EMP 表中的记录
GRANT ALL ON SCOTT.EMP TO test1; --允许用户插入、删除、更新和查询 EMP 表中的记录
角色管理
角色是一组相关权限的组合,可以将权限授予角色,再把角色授予用户,以简化权限管理。
GRANT CONNECT TO test1; --CONNECT角色允许用户连接至数据库,并创建数据库表
GRANT RESOURCE TO test1; --RESOURCE角色允许用户使用数据库中的存储空间
GRANT CREATE SESSION TO test1; --此系统权限允许用户连接到数据库上
查看角色(只能查看登陆用户拥有的角色)所包含的权限
select * from role_sys_privs;
给用户赋权限
grant connect,resource to test1;
revoke 收回权限
Revoke commect,resource from test1;
删除用户
drop user user_name;
删除表空间
drop tablespace tablespace_name;
4,基础的表查询
1.简单查询语句的语法
select 列名,列名,...,列名 from 表名;
select ... from :它是查询语句的关键字
select后面跟是你要从数据库里取的数据
from后面跟表名,表示你要从哪张中读取这些数据
如:
--查询emp表中员工的编号、姓名、工作、工资
select empno,ename,job,sal from emp;
--查询emp表中所有列的信息
select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp;
注: 使用*会让它执行效率变低,尽量使用列名。
2,注释
单行注释:--
多行注释:以/* 开始,以*/结尾
3,sql中的别名
对象名 as 别名
对象名 别名
如:
select empno as 员工编号,ename 姓名,job 工作,mgr 上级编号,hiredate 入职日期,sal 工资,comm 佣金,deptno 部门编号 from emp;
使用别名之前
使用之后
注意:给表、视图取别名时不能加as
select e.* from emp e; --select * from emp;
关于我对Oracle的一些认知相关推荐
- 关于我的Android 博客
我是曹新雨,我为自己代言.现在的菜鸟,3年以后我就是大神.为自己加油.微信:aycaoxinyu 关于我的Android博客,都是我当初遇到困难,克服之后,写上去的.后来,有人加我微信,问我一些问题, ...
- 关于我的FPGA博客
关于我的FPGA博客 1)一直从事FPGA相关工作,10年工作经验: 2)主要从事Xilinx FPGA逻辑开发: 3)FPGA研究方向为接口开发,包括低速接口和高速接口: 4)熟练使用FPGA开发软 ...
- 数据科学与R语言: 关于我 Rer
数据科学与R语言: 关于我 Rer 数据科学与R语言: 关于我 关于我 钱钟书曾说,鸡蛋好吃不一定要去认识下蛋的母鸡.不过人类是社会化的动物,访客和博主都希望有多一些的交流.在2012年元旦之即,写下 ...
- 关于我与CSDN不得不说的故事
关于我与CSDN不得不说的故事,emmmmm~可以确定不是"事故" Topic1 你来自哪里?来CSDN想收获什么? 坐标轨迹溯源:from 花园城市 to 榕城(虎纠) 我与CS ...
- 关于我的SEO求职经历
关于我的SEO求职经历 我是如何走进 SEO 行业的? 毕业了!我能干点什么呢?寻找网站建设公司?毕竟自己学的就是网站建设这一行业,但是从事网站建设的人士非常多,都是有工作经验的.对于 ...
- 关于我对AI的认知和看法
1,你人生中第一次接触到"人工智能"的概念和产品是什么?什么让你觉得"人类做的东西的确有智能"? 答:我人生中第一次接触到的人工智能概念是能使机器能够像人类一样 ...
- oracle数据库关不掉,oracle进程关不掉的问题??新手问题
oracle进程关不掉的问题??新手问题 刚刚的问题是因为oracle进程占用太多的内存导致宕机的原因. 进入sqlplus用shutdown immediate关闭服务后,用topas查看发现ora ...
- 关于我的CSDN博客的一些要说的话
我的目标是一百万访问量,只要我写出更多更优秀的博客,总会达到的不是吗? 写博客的心路历程 其实最早开始写博客就是为了把自己的学习笔记和错误日志保存到线上,顺便可以拿拿赚点C币,换换资源分之类的 后来慢 ...
- [软件人生]关于我,我的未来,我的思考
两个人一起生活,不只是生活中的那点事情,一定要有话题,否则,就没办法相伴一生,或者只有勉强,迟早会相互厌倦,敷衍,甚至感觉很枯燥,以至于产生些许恨意. 我曾经发布过,关于能一起工作不代表能一起生活的言 ...
最新文章
- eclipse 启动tomcat, java.lang.ClassNotFoundExcepti
- Android空间WebView和ViedeoView的使用
- RabbitMQ headers Exchange
- 最近很火的百度MIP之 zblog改造
- IO多路转接模型----(select的模型,select的优缺点,poll的模型,poll的优缺点)
- LeetCode 606. 根据二叉树创建字符串(递归)
- 滴滴技术总监受贿 1000 万,列入招聘黑名单,互联网大厂反腐有多强?
- LeetCode之SQL练习:第二高薪
- GJB 质量保证大纲(模板)
- 系统分析师-论文题目
- 2017年网易校招Java面试题
- jxt - 强结构文档数据表示协议
- jeff dean_Jeff Dean的构建大型分布式系统的软件工程建议
- list去重和list倒叙
- 省市名_code_拼音
- dom4j解析xml格式字符串获取标签属性和内容
- 港科资讯 | 香港科大委任郭毅可教授为首席副校长
- Ubuntu20.04安装vscode打开出现花屏
- oracle数据库latch,关于Oracle数据库latch: cache buffers chains等待事件
- Windows Server Core 2022 (一)安装
热门文章
- Servlet+JDBC+搜索+分页
- 想转行,为什么首选软件测试?
- 【编程基础】如何自学计算机/编程 | 从零开始的代码之路
- uni-app卖座电影多端开发纪实(五):使用插件
- 复选框_是否勾选的判断
- 工作后,你悟出什么职场道理?
- js 正则是否包含某些字符串_JS 判断字符串中是否包含某个字符串(方法总结)...
- OpenGL理解VBO,IBO,VAO
- 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java企业会议室预约系统的设计与实现3j969
- 单片机 sfr 和 sbit 的区别