clob SQL:
ALTER TABLE SYSREPORT MOVE TABLESPACE jft_index
LOB (CONTENT) STORE AS
(TABLESPACE jft_index);
CONTENT是clob字段
存储过程
/*******************************
*
*修改集付通数据库默认表空间,临时表空间,索引表空间存储过程
*
*调用 : change_jft_tablespace(数据表空间名称,索引表空间名称) examp:exec change_jft_tablespace ('jft_data','jft_index');
*auther: fanwg@insigmacc.com
*date : 2013-04-10 17:29:12
*******************************/
create or replace procedure change_jft_tablespace(data_table_space_name in varchar,
index_table_space_name in varchar) is
i_count INT := 0;
--data_table_space_name varchar2(20):='';
--index_table_space_name varchar2(20):='';
--temp_table_space_name varchar2(20):='';
--修改表的数据表空间 记录集放到游标中
CURSOR c_data_sql IS
SELECT 'alter table ' || table_name || ' move tablespace ' ||
data_table_space_name as ddl,
table_name as tbname
FROM user_tables
where TABLESPACE_NAME <> upper(data_table_space_name);
--修改表的索引表空间 记录集放到游标中
CURSOR c_index_sql IS
SELECT 'alter index ' || index_name || ' rebuild tablespace ' ||
index_table_space_name as ddl,
table_name as tbname
FROM user_indexes
where TABLESPACE_NAME <> upper(index_table_space_name)
and index_type <> 'LOB';
begin
--create temporary tablespace jft_temp tempfile 'F:\orac11g\demo\temp\jft_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local;
--create tablespace jft_data logging datafile 'F:\orac11g\demo\data\jft_data01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local;
--create tablespace jft_index logging datafile 'F:\orac11g\demo\index\jft_index01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local;
--alter user jft_test temporary tablespace jft_temp;
--alter user jft_test default tablespace jft_data;
--对于含有特殊类型clob字段的表需要特殊处理
-- 执行修改索引表空间
FOR r_mysql IN c_index_sql LOOP
DBMS_OUTPUT.put_line(r_mysql.ddl || ',' || r_mysql.tbname);
EXECUTE IMMEDIATE r_mysql.ddl;
i_count := i_count + 1;
END LOOP;
DBMS_OUTPUT.put_line('i_count: ' || i_count);
i_count := 0;
-- 执行修改数据表空间
FOR r_mysql IN c_data_sql LOOP
DBMS_OUTPUT.put_line(r_mysql.ddl || ',' || r_mysql.tbname);
EXECUTE IMMEDIATE r_mysql.ddl;
i_count := i_count + 1;
END LOOP;
DBMS_OUTPUT.put_line('i_count: ' || i_count);
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('异常:' || 'sqlcode:' || SQLCODE || ' sqlerrm : ' ||
SQLERRM);
end change_jft_tablespace;
/
今天发现插入数据索引失效的问题
后来发现上述却本造成索引无索了
解决办法:先修改表的表空间,再修改再的表的索引表空间
请将上述两段代码互换
分享到:
相关推荐
### ORACLE中CLOB字段转String类型 在Oracle数据库中,`CLOB`(Character Large Object)是一种用于存储大量文本数据的数据类型。由于其能够存储非常大的文本块(最大可达4GB),因此常被用于存储文章、报告或任何...
* CREATETEMPORARY 过程:创建一个临时的 BLOB 或 CLOB 和其对应的索引在用户的默认临时表空间中。 * ERASE 过程:擦除 LOB 的全部或部分内容。 * FILECLOSE 过程:关闭文件。 * FILECLOSEALL 过程:关闭所有之前...
另外,Oracle还提供了全文索引(Full-Text Indexing)功能,通过CTXSYS.CONTEXT类型的索引,可以加速对CLOB字段的文本搜索。创建全文索引的SQL语句如下: ```sql create index search_id on table_name (column) ...
本文将详细阐述如何在Oracle中修改表空间,包括处理BLOB和CLOB字段的具体步骤。 ### 修改表空间的背景与意义 表空间是Oracle数据库中的逻辑存储单元,用于组织和管理数据文件。随着业务的发展,原有的表空间可能...
在J2EE开发中,处理大数据对象(如大文本或二进制数据)时,Oracle数据库的CLOB字段常被用来存储超过4000字节的信息。Spring和Hibernate框架结合使用可以有效地进行CLOB字段的操作。以下是实现这一功能的关键步骤和...
### Oracle 多个表空间合并成一个表空间详解 #### 背景介绍 在进行数据库维护时,可能会遇到需要将多个表空间合并为一个的情况。这种情况通常发生在新项目的开发过程中,尤其是当新项目需要引用来自其他表空间的...
该过程首先构建SQL查询语句,然后使用EXECUTE IMMEDIATE执行动态SQL,获取指定ID的Clob字段,并在指定位置写入新数据。如果需要插入超过32766个字符,可以通过循环调用该过程来实现。 另一个示例`getclob`函数是一...
反向索引主要应用于长文本字段,如CLOB和NCLOB,将索引键的最后一个字节作为第一个字节存储,提高查询性能。 4. **函数索引(Function-Based Index)** 允许基于列的函数结果创建索引,使得对函数的结果进行查询...
在数据库编程领域,CLOB(Character Large Object)和BLOB(Binary Large Object)是用于存储大量文本和二进制数据的数据类型。在DELPHI中,处理这些大型对象时需要特殊的技术和策略。本篇文章将深入探讨DELPHI中...
在Oracle数据库中,CLOB(Character Large Object)数据类型用于存储大文本数据,如文章、文档等,最大容量可达4GB或更大。由于其特殊性,处理CLOB字段需要一些特定的方法。以下是一些关键点的详细介绍: 1. **插入...
OracleClob clob = new OracleClob((OracleConnection)m_objConn); OracleParameter param = new OracleParameter('clob', OracleDbType.Clob, clob, ParameterDirection.Input); param.Value = "超过4000字符的超常...
在创建表时,可以添加Blob或Clob字段来存储大对象。例如: ```sql CREATE TABLE MyTable ( ID NUMBER PRIMARY KEY, BlobData BLOB, ClobData CLOB ); ``` 2. **插入数据**: 插入Blob数据通常需要使用`UTL...
5. 配置数据库:创建相应的表,包含存储图片路径或元数据的字段,可能需要使用 BLOB 或 CLOB 类型来存储大文件。 6. 显示图片:在需要显示图片的页面,根据数据库中存储的路径加载图片。 注意,文件上传时要确保...
通过对象浏览器,用户可以以树形结构查看和管理数据库中的各种对象,包括表、视图、索引、程序包、存储过程、函数、触发器、类型、序列、物化视图、日志、同义词、数据库链接、目录、回收站等。每个对象类型都有...
Oracle数据库系统支持对大型数据对象(LOBs,Large Objects)的操作,这包括BLOB、CLOB、NCLOB和BFILE四种类型。每种类型都有其特定的用途和特性,适用于存储不同类型的大数据。 1. BLOB(Binary Large Object): ...
- CREATE:创建各种数据库对象,如表、索引、视图、同义词、过程、函数和数据库链接。常见的字段类型有: - CHAR:固定长度字符串 - VARCHAR2:可变长度字符串 - NUMBER(M,N):数字类型,M为总长度,N为小数长度...
在数据库管理与应用开发中,处理BLOB(Binary Large Object)类型字段是一项常见的需求,尤其是在存储大量二进制数据如图像、音频或视频文件时。本文将深入探讨如何判断一个BLOB字段是否为空,这是一个在数据库操作...
首先,关于Oracle数据库对象管理,主要包括创建和修改表结构、管理索引、维护表分区、创建和管理视图及序列等操作。创建表(CREATE TABLE)是数据库管理中最基础的操作,涉及到数据类型、存储参数和数据块管理等特性...
例如,如果你有一个包含JSON对象的CLOB字段,你可以使用JSON_TYPE来检查特定键的类型,这在解析和验证数据时非常有用。 2. JSON_VALUE和JSON_QUERY: 这两个函数是提取JSON数据的核心工具。JSON_VALUE用于获取单个...