TIPTOP资料库管理Oracle_4

更新时间:2023-04-09 12:41:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

TIPTOP数据库管理 (Oracle) (四)愿景.企业全球化.信息零时差 愿景.企业全球化.信息零时差Anywhere, Anywhere, Anytime Anytime with with
制作:神州数码管理系统有限公司

学习对象及目标学习对象必修:系统工程师、服务人员、研发人员、 MIS人员
学习目标
1. 熟悉表的概念并掌握相关操作; 2. 熟悉索引的概念并掌握相关操作; 3. 能熟练掌握Oracle的数据导入和导出; 4. 学会使用TIPTOP工具程序。

课程大纲
1 2 3 4
表与相关操作
索引与相关索引操作
数据导出与导入 TIPTOP常用工具

课程简介
Oracle中的数据 是怎么存放的?
如何对Oracle数据 进行备份和恢复?
TIPTOP的多工厂数据 是怎样存放的?

表与相关表操作
1 2 3 4
表与相关操作
索引与相关索引操作
数据导出与导入 TIPTOP常用工具

TIPTOP与ORACLE对应的图表TIPTOP环境(正式区、测试 区) 工厂(营运中心) 业务数据 业务数据 系统数据 系统数据
Oracle数据库
用户 表 表 同义词 同义词

Oracle表表的物理位置由 Oracle自行管理, 对用户透明。
数据库 数据库 表空间 数据库表和索引都位 于该逻辑层 次。
数据文件 数据库
段 数据库 段 数据库 分区 数据库
逻辑结构
Oracle 块 数据库
OS块 数据库
物理结构

数据的存储方式每个行以变长记录的形式存放在数据 块中,其中的各个列根据定义时的顺 序排列,每个行包括下面两个部分:
? 行首:存放行编号、相关的链接 信息以及该行的锁定(Lock)状态。
? 行数据:该行中各个列的信息,
行首 列长度 数据库块(Block) 列数据
每个列信息由1~3个字节的列长度定 义及数据构成。
行与行之间是紧密排列的,每个行的 起始位置会记录于整个块首的分区表 中。

表操作创建表SQL>CREATE TABLE imx_file( imx01 VARCHAR2(60), imx02 VARCHAR2(10), imx03 SMALLINT, imx04 DATE imx05 NUMBER(6));Oracle中推荐以VARCHAR2取代VARCHAR来存放字符串信息,这两种的类型 的区别在于VARCHAR是跟随SQL标准定义,在各个不同的Oracle版本中可能有 不同定义,而VARCHAR2是由Oracle自己定义并保证其在各版本间的兼容性。 在TIPTOP中标准的数据类型有以下几种: NUMBER、CHAR、DATE、VARCHAR2、BLOB

表操作使用现有数据来创建表SQL>CREATE TABLE … AS SELECT
复制一个表SQL>CREATE TABLE imx_temp AS SELECT * FROM imx_file … AS SELECT
创建一个空表SQL>CREATE SELECT TABLE imx_temp AS * FROM imx_file WHERE 1=0
从几个表中选取记录来创建SQL>CREATE TABLE imx_temp AS SELECT imx01,imd02 FROM imx_file,imd_file WHERE imx01=imd01

表操作删除表SQL>DROP SQL>DROP TABLE TABLE imx_temp; imx_temp;
截断表SQL>TRUNCATE TABLE imx_temp; SQL>DROP TABLE imx_temp;截断表的结果是将表中数据全部删除,和使用DELETE语句的效果相同,两者的 区别在与截断操作不记录Redo Log信息,所以更快,但操作无法恢复,所以在 程序撰写过程中,一般对于临时表使用截断语句。
修改表名称SQL>RENAME imx_temp to imx_temp1; SQL>DROP TABLE imx_temp;修改表名之后原索引实效,必须将其重建。

表操作查看表结构SQL>desc SQL>DROP imx_file; TABLE imx_temp;名称 名称 -------------------------------------------------------IMX000 IMX000 IMX00 IMX00 IMX01 IMX01 IMX02 IMX02 IMX03 IMX03 IMX04 IMX04 IMX05 IMX05 IMX06 IMX07 IMX06 IMX08 IMX07 IMX09 IMX08 IMX10 IMX09 IMX10 是否为空? 类型 类型 是否为空? -------------------------------------NOT NOT NULL NULLVARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(10) VARCHAR2(10) VARCHAR2(10) VARCHAR2(10) VARCHAR2(10) VARCHAR2(10) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40) VARCHAR2(40)

修改表结构增加栏位SQL>ALTER TABLE imx_temp; imx_file add imx11 varchar2(10); SQL>DROP TABLE
删除栏位SQL>ALTER TABLE imx_temp; imx_file drop column imx11; SQL>DROP TABLE
修改栏位数据类型SQL>ALTER TABLE imx_temp; imx_file modify imx11 varchar2(20); SQL>DROP TABLE
栏位更名SQL>ALTER TABLE imx_temp; imx_file rename column imx1 to imx2; SQL>DROP TABLE
修改栏位NOT NULL约束SQL>ALTER TABLE imx_temp; imx_temp modiy imx11 null/not null; SQL>DROP TABLE

数据字典与动态性能视图DBA_TABLES DBA_TABLES ALL_TABLES ALL_TABLES USER_TABLES USER_TABLES DBA_TAB_COLUMNS DBA_TAB_COLUMNS ALL_TAB_COLUMNS ALL_TAB_COLUMNS USER_TAB_COLUMNS USER_TAB_COLUMNS DBA_OBJECTS ALL_OBJECTS USER_OBJECTS
DBA_XXXUSER_XXX
ALL_XXXUSER_XXX USER_XXX USER_XXX
SYSTEM
DS
DS1
DS2

TIPTOP相关脚本查询当前系统中的锁SQL>@q_lock SQL>@q_datafileOS_USER OS_USER ------------PID PID ORL_USR ORL_USR OID OID LOCK_TYPE LOCK_TYPE LOCK_HELD LOCK_HELD ------- ------------- ----- --------------------- ------------------147 147 147 147 147 147 147 147 147 147 147 147 Transaction Transaction Exclusive Exclusive DML Row-X DML Row-X (SX) (SX) DML DML DML DML Row-X Row-X (SX) (SX) Row-X Row-X (SX) (SX) LOCK_REQUEST LOCK_REQUEST STATUS STATUS ----------------------- ----------------------None None None None None None None None Blocking Blocking Not Not Blocking Blocking Not Not Not Not Blocking Blocking Blocking Blocking OWNER OWNER --------DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 OBJ_NAME OBJ_NAME --------------OMA_FILE OMA_FILE OMA_FILE OMA_FILE OMA_FILE OMA_FILE OMA_FILE OMA_FILE OMA_FILE OMA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE OGA_FILE
tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3603 3603 DS1 DS1 tiptop tiptop 3491 3491 DS1 DS1
Transaction Exclusive Transaction None None Exclusive Transaction Transaction Exclusive Exclusive None None 147 Row-X 147 DML DML Row-X (SX) (SX) None None 147 Row-X 147 DML DML Row-X (SX) (SX) None None 147 147 147 147 DML Row-X DML Row-X (SX) (SX) Transaction Transaction None None None None Exclusive Exclusive
Not Not Blocking Blocking Blocking Blocking Not Not Not Not Not Not Not Not Blocking Blocking Blocking Blocking
Blocking Blocking DS1 DS1 Blocking Blocking DS1 DS1 DS1 DS1
146 146 Transaction Transaction Exclusive Exclusive None None
Blocking Blocking

TIPTOP相关脚本查询引起锁的SQL语句SQL>@q_lockSQL SQL>@q_datafileUSERNAME USERNAME --------------DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 DS1 SID ID1 SID SERIAL# SERIAL# TY TY LOCK_TYPE LOCK_TYPE LOCK_REQUESTE LOCK_REQUESTE ID1 ID2 ID2 SQL_TEXT SQL_TEXT ----- ------------- --- ----------------- ------------------------- ----------- ------- ----------------------------------------------------136 3727 Exclusive 262184 136 3727 TX TX None None Exclusive 262184 4289 4289 update update ogb_file ogb_file SET SET ogb63 ogb63 136 136 136 136 146 146 146 146 146 146 146 146 147 147 147 147 3727 3727 TX TX None None 3727 3727 TX TX None None Exclusive Exclusive Exclusive Exclusive 262184 262184 4289 4289 = = :p1,ogb64 :p1,ogb64 = = :p2 :p2 WHERE WHERE 262184 262184 4289 4289 ogb01 ogb01 = = :p3 :p3 AND AND ogb03 ogb03 = = :p4 :p4 655372 655372 4311 4311 select select sma124, sma124, smb04 smb04 from from 655372 655372 4311 4311 sma_file sma_file ,smb_file ,smb_file where where 655372 655372 4311 4311 sma00 sma00 = = '0' '0' AND AND sma124 sma124 = = 655372 655372 4311 4311 smb01 smb01 AND AND smb02 smb02 = = '0' '0' 262184 262184 4289 4289 update update oga_file oga_file SET SET oga10 oga10 = = 262184 262184 4289 4289 :p1 :p1 WHERE WHERE oga01 oga01 = = :p2 :p2
2543 2543 TX TX Exclusive Exclusive None None 2543 2543 TX TX Exclusive Exclusive None None 2543 2543 TX TX Exclusive Exclusive None None 2543 2543 TX TX Exclusive Exclusive None None 1906 1906 TX TX Exclusive Exclusive None None 1906 1906 TX TX Exclusive Exclusive None None

TIPTOP相关脚本查询当前被锁定的表SQL>@q_locktable SQL>@q_datafileLocked Locked Object Object Tiptop Tiptop User User Proc Proc Terminal Terminal SID SID SERIAL# SERIAL# MACHINE MACHINE
------------------------------- --------------------- --------- --------------- ------------------- ------------------- ------------------DS1.OGB_FILE DS1.OGB_FILE DS1.OHA_FILE DS1.OHA_FILE DS1.OGA_FILE DS1.OGA_FILE DS1.OGA_FILE DS1.OGA_FILE DS1.OGB_FILE DS1.OGB_FILE DS1.OMA_FILE DS1.OMA_FILE tiptop tiptop tiptop tiptop tiptop tiptop tiptop tiptop tiptop tiptop tiptop tiptop 28525 28525 28525 28525 3491 3491 3603 3603 3603 3603 3603 3603 136 136 136 136 146 146 147 147 147 147 147 147 3727 3727 ERP ERP 3727 3727 ERP ERP 2543 2543 ERP ERP 1906 1906 ERP ERP 1906 1906 ERP ERP 1906 1906 ERP ERP
解除对某个表的锁定SQL>alter system kill session ‘SID,SERIAL’; SQL>@q_datafile

同义词DSZX_FILE
DS1ZX_FILE
SELECT COUNT(*) FROM zx_file
类似于Windows中的 快捷方式

同义词操作创建同义词SQL>CREATE FOR [owner].[table]; SQL>CREATE SYNONYM TABLE … [table] AS SELECT SQL>CREATE FOR ds.ze_file; SQL>CREATE SYNONYM TABLE … ze_file AS SELECT
删除同义词SQL>DROP TABLE ze_file; SQL>CREATE TABLE … AS SELECT

本文来源:https://www.bwwdw.com/article/8zbl.html

Top