Oracle+11g+笔记(4)-Oracle的基本操作

本文围绕Oracle 11g展开,介绍了其基本操作。包括数据库的启动和关闭方式,表的创建、改进,如命名规则、列类型与约束等;还涉及索引的创建与删除,视图的创建、更改和删除;最后阐述了数据操纵与查询,如复制原表插入数据、使用视图操作及PL/SQL语言应用等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle+11g+笔记(4)-Oracle的基本操作

4、Oracle的基本操作

4.1 Oracle的启动和关闭

4.1.1 启动

启动数据库的语法如下:

STARTUP [NOMOUNT|MOUNT|OPEN|FORCE|RESTRICT|EXCLUSIVE][PFILE='pfile_name'];

1、startup nomount

非安装启动,这种方式下启动可执行:重建控制文件、重建数据库,读取init.ora文件,启动instance,即启

SGA和后台进程,这种启动只需要init.ora文件。

SQL> conn sys/sysroot as sysdba
SQL> startup nomount;

2、startup mount

安装启动,这种方式启动下可执行:数据库日志归档、数据库介质恢复、使数据文件联机或脱机、重新定位数据文

件、重做日志文件。

执行nomount,然后打开控制文件,确认数据文件和联机日志文件的位置,但此时不对数据文件和日志文件进行

校验检查。

SQL> conn sys/sysroot as sysdba
SQL> startup mount;

3、startup open

先执行nomount,然后执行mount,再打开包括Redo log文件在内的所有数据库文件,这种方式下可访问数据库

中的数据。

SQL> conn sys/sysroot as sysdba
SQL> startup open;

数据库有3种启动模式,分别代表启动数据库的3个步骤,如表所示。当数据库管理员使用STARTUP命令时,可以

指定不同的选项来决定将数据库的启动推进到哪个启动模式。在进入某个模式后,可以使用ALTER DATABASE命令

来将数据库提升到更高的启动模式,但不能使数据库降低到前面的启动模式。

在这里插入图片描述

4、startup

等于以下三个命令:

startup nomount
alter database mount
alter database open

5、startup restrict

约束方式启动,这种方式能够启动数据库,但只允许具有一定特权的用户访问,非特权用户访问时,会出现以下提

示:ERROR:ORA-01035: ORACLE 只允许具有 RESTRICTED SESSION 权限的用户使用

SQL> conn sys/sysroot as sysdba
SQL> startup restrict;

6、startup force

强制Oracle数据库启动方式,当不能关闭数据库时,可以用startup force来完成数据库的关闭,先关闭数据

库,再执行正常启动数据库命令。

SQL> conn sys/sysroot as sysdba
SQL> startup force;

7、startup pfile=参数文件名

带初始化参数文件的启动方式,先读取参数文件,再按参数文件中的设置启动数据库

例:startup pfile=E:\Oracle\admin\oradb\pfile\init.ora

8、startup EXCLUSIVE

独占和共享启动。这种启动方式只允许一个例程使用该数据库;共享启动的参数是shared,表示允许多个例程并

行使用该数据库,即将数据库装入多个现场。

4.1.2 关闭

SQL*Plus关闭数据库的语法如下:

SHUTDOWN [NORMAL|TRANSACTIONAL|IMMEDIATE|ABORT];

1、shutdown normal

正常方式关闭数据库。

2、shutdown immediate

立即方式关闭数据库,在SVRMGRL中执行shutdown immediate,数据库并不立即关闭,而是在Oracle执行某些

清除工作后才关闭(终止会话、释放会话资源),当使用shutdown不能关闭数据库时,shutdown immediate可以

完成数据库关闭的操作。

3、shutdown abort

直接关闭数据库,正在访问数据库的会话会被突然终止,如果数据库中有大量操作正在执行,这时执行

shutdown abort后,重新启动数据库需要很长时间。

4、shutdown transactional

TRANSACTIONAL选项比NORMAL 选项稍微主动些,它能在尽可能短的时间内关闭数据库。按TRANSACTIONAL 选项

关闭数据库时,Oracle 将等待所有当前未提交的事务完成后再关闭数据库。

4.2 表的创建与改进

4.2.1 表与列的命名
  • 长度必须在1~30个字节之间。

  • 必须以一个字母开头。

  • 能够包含字母、数值、下划线符号_、英镑符号#和美元符号$

  • 不能使用保留字,如CHAR 或是 NUMBER。

  • 若名称被围在双引号""中,唯一的要求是名称的长度在1~30个字符之间,并且不含有嵌入的双引号。

  • 每个列名称在单个表内必须是唯一的。

4.2.2 列的类型

Oracle数据表中列的数据类型和PL/SQL中的数据类型基本相同,在一些细节上稍有差异。Oracle 数据表中列的

数据类型列举如下:

(1)、字符数据类型

CHAR[(<size>)[BYTE|CHAR])]

NCHAR[(<size>)]

VARCHAR2(<size>[BYTE|CHAR])

NVARCHAR2(<size>)

(2)、大对象数据类型

CLOB

NCLOB

BLOB

BFILE

(3)、数字数据类型

NUMBER[(<precision>[.<scale>])]

(4)、日期和时间数据类型

DATE

TIMESTAMP[(<precision>)]

TIMESTAMP[(<precision>)] WITH TIME ZONE

TIMESTAMP[(<precision>)] WITH LOCAL TIME ZONE

INTERVAL DAY[(<precision>)] TO SECOND

(5)、二进制数据类型

ROW(<size>)

LONG ROW

(6)、行数据类型

ROWID

UROWID

4.2.3 列的约束

Oracle中可以建立的约束条件包括NOT NULLUNIQUECHECKPRIMARY KEYFOREIGN KEY

4.2.4 表的创建

CREATE TABLE命令创建表。

Oracle数据库中,CREATE TABLE语句基本语法格式是:

CREATE [[GLOBAL] TEMPORORY|TABLE|schema.]table_name
(columnl datatype1[DEFAULT exp1][columnl constraint],
column2 datatype2[DEFAULT exp2][column2 constraint]
[table constraint])
[ON COMMIT(DELETE| PRESERVE}ROWS]
[ORGANIZITION{HEAP|INDEX|EXTERNAL...}]
[PARTITION BY...(...)]
[TABLESPACE tablespace_name]
[LOGGING|NOLOGGING]
[COMPRESSINOCOMPRESS];

其中:

  • columnl datatype1 为列指定数据类型。

  • DEFAULT exp1 为列指定默认值。

  • column1 constraint为列定义完整性约束(constraint)。

  • [table constraint]为表定义完整性约束(constraint)。

  • [ORGANIZITION{HEAP|INDEX|EXTERNAL...}]为表的类型,如关系型(标准,按堆组织)、临时型、索引型、

    外部型或者对象型。

  • [PARTITION BY...(...)]为分区及子分区信息。

  • [TABLESPACE tablespace name]指示用于存储表或索引的表空间。

  • [LOGGING|NOLOGGING]指示是否保留重做日志。

  • [COMPRESS|NOCOMPRESS]指示是否压缩。

如果要在自己的方案中创建表,要求用户必须具有CREATE TABLE系统权限。如果要在其他方案中创建表,则要求

用户必须具有CREATE ANY TABLE系统权限。表的创建者必须在指定的表空间上具有空间配额或具有UNLIMITED

TABLESPACE 系统权限。

4.2.5 修改表结构

表在创建之后还允许对其进行更改,如添加或删除表中的列、修改表中的列,以及对表进行重新命名和重新组织

等。

普通用户只能对自己方案中的表进行更改,而具有ALTERANYTABLE系统权限的用可以修改任何方案中的表。需要

对已经建立的表进行修

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值