Oracle数据库的物理结构与MySQL以及SQLServer有着很大的不同。在使用MySQL或SQLServer时,我们不需要去关心它们的逻辑结构和物理结构。

但是在使用Oracle的时候,我们必须明白Oracle逻辑结构和物理结构。(MARK 补充这部分知识)

在逻辑结构中,Oracle从大到下,分别是如下的结构:数据库实例 -> 表空间 -> 数据段(表) -> 区 -> 块。

也就是说当我们要使用Oracle作为项目的数据库时,我们需要先创建数据库实例,之后创建表空间,再创建相对应的表(也就是逻辑结构中的数据段)。

一、创建数据库实例

创建数据库实例一般使用“配置移植工具 -> Database Configuration Assistant”来创建。

当然也可以使用代码来创建,不过使用代码过于复杂,在这里不作介绍。

二、创建表空间

创建表空间必须先登录数据库,你可以使用Oracle自带的sqlplus或plsql登录(当然还可以用OEM)。这里用plsql登录。

执行以下语句,创建名为“animal”的表空间,数据文件为“animal.dbf”

create tablespace animal
datafile 'animal.dbf' size 10M;

执行后可以使用以下语句查看是否添加成功:

-- 查询当前用户拥有的所的有表空间
select tablespace_name from user_tablespaces;

三、创建用户并指定默认表空间,并为其授予权限

创建用户并指定表空间:

--创建用户
--注意这里的XINPINV必须大写(因为Oracle自动将表空间名字全部转为大写)
create user csy identified by csy
default tablespace XINPINV;

最后,赋予用户DBA权限:

--赋予用户DBA权限
grant connect,resource,dba to csy;

四、创建表(数据段)

下面的语句在animal表控件下创建一个名为dog的表:

create table dog
(
name varchar(12),
age varchar(12)
)
tablespace animal;

使用下面的语句查看是否添加成功:

-- 查看ANIMAL表空间下的所有表
select tablespace_name, table_name from user_tables
where tablespace_name = 'ANIMAL';

注意:上面的'ANIMAL'一定要大写。即使你在创建表空间的时候输入的表空间名是小写的,也还是要大写。因为ORACLE在存储表空间的时候自动将名字转化成大写了。

Oracle中如何创建数据库的更多相关文章

  1. Oracle中HWM与数据库性能的探讨

    Oracle中HWM与数据库性能的探讨 一.什么是高水位 HWM(high water mark),高水标记,这个概念在segment的存储内容中是比较重要的.简单来说,HWM就是一个segment中 ...

  2. Oracle 11g R2创建数据库之手工建库方式

    在之前的博文当中梳理了关于DBCA静默方式创建数据库的过程,本文就手工通过SQL*PLUS客户端采用CREATE DATABASE语句创建数据库.这种建库方式就是完全使用手工SQL语句创建数据库,通常 ...

  3. Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令

    Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令 ------------------------------------------------------------------ ...

  4. Oracle如何实现创建数据库、备份数据库及数据导出导入的一条龙操作

    Oracle中对数据对象和数据的管理,无疑都是使用PL/SQL Developer来进行管理,该工具也提供给我们很多方便.快捷的操作,使得我们不再为Oracle本身丑陋.难用的UI而抱怨.由于我们一般 ...

  5. [转]Oracle如何实现创建数据库、备份数据库及数据导出导入的一条龙操作

    本文转自:http://www.cnblogs.com/wuhuacong/archive/2012/03/09/2387680.html Oracle中对数据对象和数据的管理,无疑都是使用PL/SQ ...

  6. [转] Oracle学习之创建数据库(新建实例)

    由于项目需求,在本机中开发,需要新建oracle数据库实例,亲测可以. 出处:http://blog.csdn.NET/luiseradl/article/details/6972217 http:/ ...

  7. Oracle中 HWM与数据库性能的探讨

    链接:http://www.eygle.com/archives/2011/11/oracle_hwm_tuning.html 本文讨论的是oracle中关于table的HWM的内容,主要包括这样几个 ...

  8. oracle中的创建过程,函数,包

    一.创建存储过程 存储过程是在oracle中存取完成特定业务逻辑的代码块.存储过程是命名块,匿名块不存在数据库中,命名块会存储到数据库中,匿名块每次运行都需要提前编译,命名块一次存储,只会编译一次.命 ...

  9. oracle中如何创建dblink

    当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据.下面讲介绍如何在本地数 ...

随机推荐

  1. js 的cookie问题

    获取时解码可以用decodeURIComponent(),代替 unescape() // 设置cookiefunction setCookie(name,value) { var Days = 30 ...

  2. pytest框架优化——将异常截屏图片加入到allure报告中

    痛点分析: 在做allure定制化的时候,关于附件添加这一块,我们在代码里可以添加我们准备好的附件,这里用图片,通过下面的方法就能实现 allure.attach(file, '图片描述', allu ...

  3. pandas 学习 第2篇:Series -(创建,属性,转换和索引)

    序列(Series)是由一组数据(各种NumPy数据类型),以及一组与之相关的数据标签(索引)组成,序列不要求数据类型是相同的. 序列是一个一维数组,只有一个维度(或称作轴)是行(row),在访问序列 ...

  4. WPF ListBox 隐藏滑块

    <ListBox ScrollViewer.VerticalScrollBarVisibility = "Disabled"; </ListBox>

  5. hello tensorflow,我的第一个tensorflow程序

    上代码: import tensorflow as tf if __name__=='__main__': g = tf.Graph() # add ops to the user created g ...

  6. abp实战-ContosoUniversity Abp版-1运行项目

    1. 去abp官网下载模板工程,当前最新版本是abp5.0,基于.net core 3.0 https://aspnetboilerplate.com/ 项目名称为ContosoAbp 这里使用的是n ...

  7. PHP作用域和文件夹操作

    1.作用域      1.1变量作用域      1.全局变量:在函数外面       2.局部变量:在函数里面,默认情况下,函数内部是不会访问函数外部的变量       3.超全局变量:可以在函数内 ...

  8. Java生鲜电商平台-你应该保留的一些学习态度与学习方法

    Java生鲜电商平台-你应该保留的一些学习态度与学习方法 说明:Java开源生鲜电商平台这一类学习课程系列已经初步接近了尾声,那么作为学习生鲜电商B2B2C电商的你,应该有一个什么样子的学习态度与学习 ...

  9. HTML常用标签四

    表单 表单的组成 一个完整的表单通常由表单域.表单控件(也称表单元素)和提示信息3各部分组成 表单域 表单域是一个包含表单元素的区域 在HTML中,<form> 标签用去定义表单域,以实现 ...

  10. E203 CSR寄存器

    RiscV架构则定义了一些控制和状态寄存器(CSR),用于配置或记录一些运行的状态.CSR寄存器是处理器内核内部的寄存器,使用专有的12位地址编码空间,对一个hart,可以配置4k的CSR寄存器. 蜂 ...