iot表测试:

在create table语句后面使用organization index,就指定数据表创建结构是IOT。但是在不指定主键Primary Key的情况下,是不允许建表的。
create table t2 (id int primary key,a1 char(10),a2 char(10),a3 char(10))organization index; SQL> select object_name,object_type from user_objects; OBJECT_NAME OBJECT_TYPE
-------------------------------------------------------------------------------------------------------------------------------- -------------------
T1 TABLE
SYS_C0021515 SQL> select object_name,object_type from user_objects; OBJECT_NAME OBJECT_TYPE
-------------------------------------------------------------------------------------------------------------------------------- -------------------
SYS_IOT_TOP_101447 INDEX
T2 TABLE
SYS_C0021515 INDEX
T1 SQL> select segment_name,SEGMENT_TYPE,TABLESPACE_NAME,bytes,blocks,extents from user_segments; SEGMENT_NAME SEGMENT_TYPE TABLESPACE_NAME BYTES BLOCKS EXTENTS
------------------------------ ------------------ ------------------------------ ---------- ---------- ----------
SYS_C0021515 INDEX USERS 131072 16 2
SYS_IOT_TOP_101447 INDEX USERS 196608 24 3
T1 TABLE USERS 196608 24 3 可以IOT表数据都存放在索引里 SQL> select table_name,TABLESPACE_NAME,CLUSTER_NAME,IOT_NAME from user_tables; TABLE_NAME TABLESPACE_NAME CLUSTER_NAME IOT_NAME
--------------- ------------------------------ ------------------------------ ------------------------------
T2
T1 USERS SQL> select segment_name,SEGMENT_TYPE, TABLESPACE_NAME,EXTENT_ID,bytes,blocks from user_extents; SEGMENT_NAME SEGMENT_TYPE TABLESPACE_NAME EXTENT_ID BYTES BLOCKS
-------------------- ------------------ ------------------------------ ---------- ---------- ----------
T1 TABLE USERS 0 65536 8
T1 TABLE USERS 1 65536 8
T1 TABLE USERS 2 65536 8
SYS_C0021515 INDEX USERS 0 65536 8
SYS_C0021515 INDEX USERS 1 65536 8
SYS_IOT_TOP_101447 INDEX USERS 0 65536 8
SYS_IOT_TOP_101447 INDEX USERS 1 65536 8
SYS_IOT_TOP_101447 INDEX USERS 2 65536 8 已选择8行。 可以看到根本没有给t2(iot)表分配空间 SQL> set linesize 200
SQL> select object_name,object_id from user_objects; OBJECT_NAME OBJECT_ID
-------------------------------------------------------------------------------------------------------------------------------- ----------
SYS_IOT_TOP_101449 101450
T2 101449 begin
for i in 1 .. 2000
loop
insert into t2 values(i,i,i,'a'||i);
end loop
;
commit;
end; 将索引dump到trace文件中
SQL> select value from v$diag_info where name='Default Trace File'; VALUE
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/u01/app/oracle/diag/rdbms/oadb/oadb/trace/oadb_ora_29729.trc SQL> alter session set events 'immediate trace name treedump level 101450'; 会话已更改。 ----- begin tree dump
branch: 0x10000ab 16777387 (0: nrow: 12, level: 1)
leaf: 0x10000ac 16777388 (-1: nrow: 184 rrow: 184)
leaf: 0x10000ad 16777389 (0: nrow: 181 rrow: 181)
leaf: 0x10000ae 16777390 (1: nrow: 181 rrow: 181)
leaf: 0x10000af 16777391 (2: nrow: 181 rrow: 181)
leaf: 0x10000b4 16777396 (3: nrow: 181 rrow: 181)
leaf: 0x10000b5 16777397 (4: nrow: 181 rrow: 181)
leaf: 0x10000b6 16777398 (5: nrow: 181 rrow: 181)
leaf: 0x10000b7 16777399 (6: nrow: 181 rrow: 181)
leaf: 0x10000b0 16777392 (7: nrow: 181 rrow: 181)
leaf: 0x10000b1 16777393 (8: nrow: 181 rrow: 181)
leaf: 0x10000b2 16777394 (9: nrow: 181 rrow: 181)
leaf: 0x10000b3 16777395 (10: nrow: 6 rrow: 6)
----- end tree dump
~ SQL> select dbms_utility.data_block_address_file(16777388)fno,
dbms_utility.data_block_address_block(16777388) bkno from dual 2 ; FNO BKNO
---------- ----------
4 172 alter system dump datafile 4 block 172; dump 信息如下; tab 0, row 0, @0x1f69
tl: 47 fb: --H-FL-- lb: 0x0 cc: 4
col 0: [10] 36 31 20 20 20 20 20 20 20 20
col 1: [10] 36 31 20 20 20 20 20 20 20 20
col 2: [10] 36 31 20 20 20 20 20 20 20 20
col 3: [10] 61 36 31 20 20 20 20 20 20 20
tab 0, row 1, @0x1f3a
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 30 20 20 20 20 20 20 20
col 1: [10] 31 30 30 20 20 20 20 20 20 20
col 2: [10] 31 30 30 20 20 20 20 20 20 20
col 3: [10] 61 31 30 30 20 20 20 20 20 20
tab 0, row 2, @0x1f0b
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 31 20 20 20 20 20 20 20
col 1: [10] 31 30 31 20 20 20 20 20 20 20
col 2: [10] 31 30 31 20 20 20 20 20 20 20
col 3: [10] 61 31 30 31 20 20 20 20 20 20
tab 0, row 3, @0x1edc
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 32 20 20 20 20 20 20 20
col 1: [10] 31 30 32 20 20 20 20 20 20 20
col 2: [10] 31 30 32 20 20 20 20 20 20 20
col 3: [10] 61 31 30 32 20 20 20 20 20 20
tab 0, row 4, @0x1ead
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 33 20 20 20 20 20 20 20
col 1: [10] 31 30 33 20 20 20 20 20 20 20
col 2: [10] 31 30 33 20 20 20 20 20 20 20
col 3: [10] 61 31 30 33 20 20 20 20 20 20
tab 0, row 5, @0x1e7e
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 34 20 20 20 20 20 20 20
col 1: [10] 31 30 34 20 20 20 20 20 20 20
col 2: [10] 31 30 34 20 20 20 20 20 20 20
col 3: [10] 61 31 30 34 20 20 20 20 20 20 DECLARE
n VARCHAR2 (2000);
BEGIN
DBMS_STATS.convert_raw_value ('36', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('31', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
DBMS_STATS.convert_raw_value ('20', n);
DBMS_OUTPUT.put_line (n);
END; tab 0, row 0, @0x1f69
tl: 47 fb: --H-FL-- lb: 0x0 cc: 4
col 0: [10] 36 31 20 20 20 20 20 20 20 20 表示61
col 1: [10] 36 31 20 20 20 20 20 20 20 20 表示61
col 2: [10] 36 31 20 20 20 20 20 20 20 20 表示61
col 3: [10] 61 36 31 20 20 20 20 20 20 20 表示a61 tab 0, row 1, @0x1f3a
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 30 20 20 20 20 20 20 20 表示100
col 1: [10] 31 30 30 20 20 20 20 20 20 20 表示100
col 2: [10] 31 30 30 20 20 20 20 20 20 20 表示100
col 3: [10] 61 31 30 30 20 20 20 20 20 20 表示a100 tab 0, row 2, @0x1f0b
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 31 20 20 20 20 20 20 20 表示101
col 1: [10] 31 30 31 20 20 20 20 20 20 20 表示101
col 2: [10] 31 30 31 20 20 20 20 20 20 20 表示101
col 3: [10] 61 31 30 31 20 20 20 20 20 20 表示a101 tab 0, row 3, @0x1edc
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 32 20 20 20 20 20 20 20 表示102
col 1: [10] 31 30 32 20 20 20 20 20 20 20 表示102
col 2: [10] 31 30 32 20 20 20 20 20 20 20 表示102
col 3: [10] 61 31 30 32 20 20 20 20 20 20 表示a102 tab 0, row 4, @0x1ead
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 33 20 20 20 20 20 20 20 表示103
col 1: [10] 31 30 33 20 20 20 20 20 20 20 表示103
col 2: [10] 31 30 33 20 20 20 20 20 20 20 表示103
col 3: [10] 61 31 30 33 20 20 20 20 20 20 表示a103 tab 0, row 5, @0x1e7e
tl: 47 fb: --H-FL-- lb: 0x2 cc: 4
col 0: [10] 31 30 34 20 20 20 20 20 20 20 表示104
col 1: [10] 31 30 34 20 20 20 20 20 20 20 表示104
col 2: [10] 31 30 34 20 20 20 20 20 20 20 表示104
col 3: [10] 61 31 30 34 20 20 20 20 20 20 表示a104

Oracle 验证IOT表数据存储在主键里的更多相关文章

  1. oracle数据库建表设置自增主键

    create sequence userlogin_ID increment by 1 start with 1 minvalue 1 maxvalue 9999999999999999 nocach ...

  2. 清空表数据 mysql让主键从1开始

    TRUNCATE TABLE name 删除表中的所有行,而不记录单个行删除操作.

  3. Oracle创建表、索引、主键、字段描述

    -- 创建表 create table SX04_LBALANCE ( YEAR VARCHAR2(10) not null, PROGRAMNO VARCHAR2(40) not null, FDA ...

  4. oracle 快速备份表数据

      oracle 快速备份表数据 CreateTime--2018年2月28日17:04:50 Author:Marydon UpdateTime--2017年1月20日11:45:07 1.1.9. ...

  5. MySQL数据表中有自增长主键时如何插入数据

    原文链接:https://blog.csdn.net/RuobaiMEN/article/details/79794199 MySQL数据库表中有自增主键ID,当用SQL插入语句中插入语句带有ID列值 ...

  6. SQL中的每一张表都必须设有主键吗

    问题描述: 公司的数据库表有时候会看到没有主键的,SQL中的每一张表都必须设有主键吗? 主键的作用: 1)保证实体的完整性: 2)加快数据库的操作速度: 3)在表中添加新记录时,数据库ACCESS会自 ...

  7. 分布式中的分库分表之后,ID 主键如何处理?

    面试题 分库分表之后,id 主键如何处理?(唯一性,排序等) 面试官心理分析 其实这是分库分表之后你必然要面对的一个问题,就是 id 咋生成?因为要是分成多个表之后,每个表都是从 1 开始累加,那肯定 ...

  8. Oracle数据库,非空约束、主键约束、外键约束、唯一约束

    非空约束:设置列时,可为空默认可为空,去掉对号之后设置数据不可为空: 唯一约束:在键中设置,唯一约束名称.类型Unique.列名:设置应用完成之后,此列数据具有唯一性:即数据不可重复(类型:Uniqu ...

  9. SQL修改表结构之添加主键,添加IDENTITY属性

    设计一张表时没有考虑到主键Id及自增长,现又需要,原脚本: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[F ...

随机推荐

  1. Jsp分页实例---真分页

    网页的分页功能的实现比较简单,实现方法也多种多样. 今天总结一个简单的Jsp真分页实例. 首先,提到分页就要先明确一个概念,何为真分页何谓假分页. 假分页:一次性从数据库读出表的所有数据一次性的返回给 ...

  2. JSP中使用cookie存储中文

    今天看J2EE的时候,看见书上讲到使用cookie保存信息的时,看到书上举得例子都是英文的键值对,我就想中文是不是一样呢?试了一下果然不一样.废话不多说,直接上代码: 比如说有addCookie.js ...

  3. 在Android开发中,定时器一般有以下3种实现方法

    在Android开发中,定时器一般有以下3种实现方法: 原文地址http://www.360doc.com/content/12/0619/13/87000_219180978.shtml 一.采用H ...

  4. html5游戏开发--"动静"结合用地图块拼成大地图 & 初探lufyl

    一.前言   本次教程将向大家讲解如何用html5将小地图块拼成大地图,以及如何用现有的高级html5游戏开发库件lufylegend.js开发游戏.   首先让我们来了解了解如何用html5实现动画 ...

  5. meanShift算法介绍

    meanShift,均值漂移,在聚类.图像平滑.切割.跟踪等方面有着广泛的应用.meanShift这个概念最早是由Fukunage在1975年提出的,其最初的含义正如其名:偏移的均值向量:但随着理论的 ...

  6. Android 它们的定义View它BounceProgressBar

    转载请注明出处:http://blog.csdn.net/bbld_/article/details/41246247 [Rocko's blog] 之前几天下载了非常久没用了的桌面版酷狗来用用的时候 ...

  7. c语言:union,大小端

    union: 不允许只用联合变量名作赋值或其它操作. 也不允许对联合变量作初始化赋值,赋值只能在程序中进行. 小端存储: 以字节为单位,低存低,高存高. 任何数据在内存中都是以二进制(1或着0)顺序存 ...

  8. eclipse中使用maven插件的时候,运行run as maven build的时候报错

    -Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable a ...

  9. [Oracle]TRIGGER

    题外话: Oracle 的使用. 以前客户方用的是SQL SERVER,一直在用SQL SERVER,感觉SQL SERVER的用户体验非常好. 不管是开发环境的界面布局到SQL 的写法上,感觉写起来 ...

  10. javascript实现快速排

    其基本思路应该是排成两部分单独记录,确定枢轴,实施枢轴到左侧值我们都小于枢轴值.枢轴向右大于枢轴值.这样子不断递归下去 function quicksort(arr,low,high){ var pi ...