Oracle基础入门

一. oracle基本介绍

1.1  oracle简介

  • Oracle 是一家全球领先的企业软件和云服务提供商,总部位于美国加利福尼亚州。

  • 该公司成立于 1977 年,由拉里·埃里森(Larry Ellison)、鲍勃·明(Bob Miner)和艾德·奥茨(Ed Oates)创办。

  • Oracle 以其数据库管理系统(Database Management System,DBMS)而闻名,成为业界最为流行和广泛使用的关系型数据库之一。

数据库:关系型数据库、非关系型数据库

oracle:关系型数据库?

何为关系型数据库?存储数据是以表格的模型来存储的
先创建表,加数据

何为非关系型数据库?存储数据是以键值对的形式
键值对:Map集合   username=zhangsan   password=123456

1.2   特点

  1. 数据库管理系统(DBMS): Oracle 数据库是其核心产品之一,被广泛用于企业级应用和数据管理。它支持高度可伸缩、安全和高性能的数据库解决方案。

  2. 云服务: Oracle 提供全球范围的云计算服务,包括基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。这使得企业能够在云端部署和管理应用程序,提高灵活性和效率。

  3. 企业软件: 除了数据库产品外,Oracle 还提供一系列企业软件解决方案,涵盖了财务、人力资源、供应链管理等各个业务领域。

  4. Java 编程语言: Oracle 拥有 Java 编程语言的开发和支持权,Java 是一种广泛用于企业级应用、移动应用和云服务的编程语言。

  5. 数据分析和人工智能: Oracle 提供数据分析和人工智能解决方案,帮助企业从大量数据中提取洞察和价值。

1.3 Oracle体系结构[理解]

  • 数据库(database)

    • oracle数据库是数据的物理存储。(相当于一大块存所有oracle数据的硬盘区域?)包括(数据文件ORA或DBF、控制文件、联机日志、参数文件)。

    • 它和其它数据库概念不一样,一整个操作系统只有这一个库(就是说实际上oracle就只有一个大数据库)。

  • 实例(oracle instance)

    • database可以创建n个oracle实例。(就好比一个地球能有n个国家,分了一块区域给你用啦)。

    • 实例中有一系列后台进程和内存结构。但实际上通常oracle数据库只会用一个数据库实例orcl。

  • 表空间

    • 是一个逻辑单位,一个实例可以创建n个表空间(就好比一个国家有n个省份)。

    • 它只是个逻辑单位,但可以映射磁盘上的物理存储单位数据文件(dbf),一个表空间可以映射多个dbf,但一个dbf只能属于一个表空间。

1.oracle中只有一个数据库,就是在你安装的时候进行创建——————地球
2.怎么区分各种管理系统(学生信息管理系统,图书信息管理系统)根据实例区分,什么实例:类似一个国家
3.表空间:类似sqlserver中的数据库——最终我们创建的数据表存放到表空间
4.用户:通过用户在指定的表空间去管理数据表。 

  • 数据文件(dbf)

    • 是一个小的物理存储单位。

    • 数据库当中的数据实际就是存储于数据文件当中,然后数据文件是对应属于表空间的(表空间好比省份,是行政区域单位,数据文件类似山川河流,为物理地区单位,数据好比人,人实际是居住在山川河流之上的)。

  • 用户

    • 是在数据库实例下创建的(也是由已经登录的用户创建的,该用户一定要有创建用户的权限)。

    • 创建了用户之后,用户登录后就能创建表(当然是放我们的数据字段啦),表是会放于某一个表空间的,实际则是放于该表空间所对应的一个或多个数据文件啦。

    • 表实际上是隶属于用户的,用户对表进行增删改查。

 注: 表的数据,是有用户放入某一个表空间的,而这个表空间会随机把这些表数据放到 一个或者多个数据文件中。

由于Oracle的数据库不是普通的概念,Oracle是由用户和表空间对数据进行管理和存放的。 但是表不是由表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同 一个名字的表!这里区分就是用户了

 

oracle 实例 表空间 用户 方案 表 数据的关系例子

我们可以把Database看作是一个大仓库,仓库分了很多很多的房间,Schema就是其中的房间,一个Schema【实例】代表一个房间,Table可以看作是每个Schema中的床。

Table(床)被放入每个房间中,不能放置在房间之外,那岂不是晚上睡觉无家可归了,然后床上可以放置很多物品,就好比 Table上可以放置很多列和行一样,数据库中存储数据的基本单元是Table,现实中每个仓库放置物品的基本单位就是床, User就是每个Schema的主人,(所以Schema包含的是Object,而不是User),user和schema是一一对应的,每个user在没有特别指定下只能使用自己schema(房间)的东西。

如果一个user想使用其他schema(房间)的东西,那就要看那个schema(房间)的user(主人)有没有给你这个权限了,或者看这个仓库的老大(DBA)有没有给你这个权限了.换句话说,如果你是某个仓库的主人,那么这个仓库的使用权和仓库中的所有东西都是你的(包括房间),你有完全的操作权,可以扔掉不用的东西从每个房间,也可以放置一些有用的东西到某一个房间,你还可以给每个User分配具体的权限,也就是他到某一个房间能做些什么,是只能看(Read-Only),还是可以像主人一样有所有的控制权(R/W),这个就要看这个User所对应的角色Role了。

借用上面的很好的例子:一个运行着的数据库程序就是一个实例(电脑上可以运行多个数据库).实例就像一个大仓库.由于仓库太大,我们租给不同的企业,每个企业根据自身的需求划定仓库的一片区域,这片区域称为表空间.企业允许员工在自己这片区域的仓库的房间内放自己的东西.每位员工只有一个房间,当放上你的一件东西后这个房间就属于你,并且以你的名字自动命名.你就是用户,而房间就是方案(schema).你可以在你的房间(方案)里置办不同的器具放不同类的东西如:鞋柜 衣橱 床等等(这些对应着表 索引 视图 触发器等等).你在这些器具里面放的具体的东西比如鞋子 衣服就是数据了.

1.4 oracle版本介绍

  • 1999年,Oracle正式提供世界上第一个Internet数据库Oracle8i。

  • 2001年,Oracle推出了新一代Internet电子商务基础架构Oracle9i。

  • Oracle Database 11g Release 2 (11.2)

  • Oracle Database 12c Release 1 (12.1)

  • Oracle Database 12c Release 2 (12.2)

  • Oracle Database 18c

  • Oracle Database 19c

二、oracle基本操作

2.1 Oracle服务启动与关闭

要使用oracle数据库,2个服务是必须启动的

  • 服务名1:OracleOraDb11g_home1TNSListener

  • 服务名2:OracleServiceORCL

 

接下来,我们通过cmd命令窗口(注意:需要用管理员身份打开dos窗口),使用命令的方式启动和关闭oracle服务,如下

启动服务

net start OracleOraDb11g_home1TNSListener

net start OracleServiceORCL

停止服务

net stop OracleOraDb11g_home1TNSListener

net stop OracleServiceORCL

2.2 oracle开发环境

sqlplus  sys/sys as sysdba
使用cmd命令窗口输入上面代码测试是否能够通过sys超级管理员登录到oracle数据库中 

 Oracle数据库安装后会有很多默认的账户,最常见的有3个账户
1.SYS 超级管理员
2.system 普通管理员
3.scott 普通用户——默认锁定的 使用该账户必须解锁(1.安装数据库成功后可以手动解锁2.代码解锁)
学习中:使用的账户————scott  密码:tiger

  • oracle自带的SQL PLUS

 

  • PL/SQL Developer 集成开发程序

 

2.3 Oracle账户介绍

Oracle安装会自动的生产sys用户和system用户

用户描述
sys用户超级管理员,具有最高权限,具有sysdba,有create database权限,默认的密码change_on_install。(安装时设定.用户手动给的),输入口令:sys as sysdba。
system用户是普通管理员,权限也很大.具有sysoper角色,没有create database。默认密码是manager。一般讲,对数据库维护,使用system永固登录就可以登录就可以。
普通用户用户名:scott; 密码:tiger(默认)安装时内置好,默认锁定的。

 注意:也就是说sys和system这两个用户最大的区别是在于有没有create database的权限。

2.3.1 登录 SQLPLUS

#cmd命令提示符窗口下:

#语法:sqlplus [用户名]/[密码][@数据库] [参数]

sq1plus sys/orc1 as sysdba --登录sys用户,必须指定sysdba 或sysoper 身份

sq1plus system/orcl--数据库管理员

2.3.2 解锁SCOTT账户

#解锁普通用户:
alter user 用户名 account unlock;
#例如:SQL> alter user scott account unlock;

#修改普通用户密码,密码以英文字母开头
alter user 用户名 identified by 新密码【密码以字母开头】;
#例如:SQL> alter user scott identified by tiger;

2.4 oracle数据库常用表

名称类型描述
EMPNONUMBER(4)雇员的编号,由四位数字组成
EBANEVARCHAR(10)雇员的姓名,由10位数字组成
JOBVARCHAR(9)雇员的职位
MGRNUMBER(4)雇员对应的领导编号
HIREDATEDATE(4)雇员的雇佣日期
SALNUMBER(7,2)基本工资,其中有两位小数,五位整数,一共是七位
COMMNUMBER(7,2)奖金/佣金
DEPTNONUMBER(2)雇员所在的部门编号 外键

3. 语法

Create tablespace mytable –创建一个名为mytable的表空间
Datafile ‘c:\myraclefiel.dbf’ –数据存放位置
Size 100m –表空间大小为100m
Autoextend on –自动扩展大小
Next 10m; –每次拓展10m

  • itcast 为表空间名称

  • datafile 指定表空间对应的数据文件

  • size 后定义的是表空间的初始大小

  • autoextend on 自动增长 ,当表空间存储都占满时,自动增长

  • next 后指定的是一次自动增长的大小。

#删除表空间
DROP TABLESPACE lft; 

4.用户创建

create user itcastuser
identified by itcast
default tablespace itcast 

  • identified by 后边是用户的密码

  • default tablespace 后边是表空间名称

  • oracle 数据库与其它数据库产品的区别在于,表和其它的数据库对象都是存储在用户 下的。

5.Oracle权限与角色

新创建的用户没有任何权限,登陆后会提示

Oracle 中已存在三个重要的角色:connect 角色,resource 角色,dba 角色。

  • CONNECT 角色: --是授予最终用户的典型权利,最基本的 ALTER SESSION --修改会话 CREATE CLUSTER --建立聚簇 CREATE DATABASE LINK --建立数据库链接

    • CREATE SEQUENCE --建立序列

    • CREATE SESSION --建立会话

    • CREATE SYNONYM --建立同义词

    • CREATE VIEW --建立视图

  • RESOURCE 角色: --是授予开发人员的

    • CREATE CLUSTER --建立聚簇

    • CREATE PROCEDURE --建立过程

    • CREATE SEQUENCE --建立序列

    • CREATE TABLE --建表

    • CREATE TRIGGER --建立触发器

    • CREATE TYPE --建立类型

  • DBA 角色:拥有全部特权,是系统最高权限,只有 DBA 才可以创建数据库结构,并且系统 权限也需要 DBA 授出,且 DBA 用户可以操作全体用户的任意基表,包括删除

grant dba to itcastuser 

进入 system 用户下给用户赋予 dba 权限,否则无法正常登陆  

#创建用户
create user aaa identified by aaa
#赋予权限
grant connect,resource to aaa;
#回收对象权限
revoke connect,resource from aaa;

6.Oracle数据类型[应用]

ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:

  • 字符串类型

  • 数字类型

  • 日期类型

  • LOB类型、LONG RAW& RAW类型

  • ROWID & UROWID类型

NUMBER 类型

  • NUMBER(P,S)是最常见的数字类型。

  • P 是Precision 的英文缩写,即精度缩写,表示有效数字的位数,最多不能超过38 个有效数字。

  • S 是Scale 的英文缩写,表示小数点数字的位数。

VARCHAR2 类型

可以存储4,000 字节的信息。类型不同,它不会使用空格填充至最大长度。VARCHAR2 最多以存储4,000 字节的信息。

DATE 类型

DATE 是最常用的数据类型,日期数据类型存储日期和时间信息。虽然可以用字符或数字类型表示日期和时间信息,但是日期数据类型具有特殊关联的属性。为每个日期值,Oracle存储以下信息: 世纪、年、月、日期、小时、分钟和秒。一般占用7 个字节的存储空间。

7.表的创建[应用]

CREATE TABLE 数据表名称 (
    字段1 数据类型 约束,
    字段2 数据类型 约束,
    ...
 );

 好啦,今天的教学就到这里噜~感谢观看!

煮啵下一篇教大家如何安装Oracle,求求各位大佬点点关注,给煮啵一点鼓励!(ORZ下跪)

  • 34
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值