Oracle 数据库 varchar2 从 4000 扩展到 32k

Oracle 数据库 varchar2 从 4000 扩展到 32k

  • [0. 引言](#0. 引言)
  • [1. 扩展 varchar2 支持长度](#1. 扩展 varchar2 支持长度)
  • [2. 测试](#2. 测试)

0. 引言

今天来个项目需求,有1个字段的存储内容大概1万字。

当然其中1个方法是将这个字段的内容切分成几个字段,还有1个方法就是将 varchar2 默认支持 4000 的能力扩展到 32k。

接下来就试一试吧。

1. 扩展 varchar2 支持长度

使用 sysdaba 连接数据库,

复制代码
sqlplus / as sysdba

查看 pdbs,

复制代码
show pdbs;

关闭要扩展的 pdb,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 CLOSE;

以 upgrade 模式 open,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 OPEN UPGRADE;

将 session 切换到要扩展的 pdb,

复制代码
ALTER SESSION SET CONTAINER=ORCLPDB1;

将 PDB 中的 MAX_STRING_SIZE 设置更改为 EXTENDED,

复制代码
ALTER SYSTEM SET MAX_STRING_SIZE=EXTENDED;

在 PDB 中运行 rdbms/admin/utl32k.sql 脚本。您必须以 SYSDBA 身份连接才能运行 utl32k.sql 脚本,

复制代码
@?/rdbms/admin/utl32k.sql

关闭要扩展的 pdb,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 CLOSE;

以正常模式 open,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 OPEN;

2. 测试

执行下面建表语句,如果能够正常执行,说明扩展成功,

复制代码
CREATE TABLE large_text_table (
    large_text_column VARCHAR2(20000)
);

reference: http://www.liberidu.com/blog/2013/12/24/ora-14696-max_string_size-migration-is-incomplete-for-pluggable-database/

相关推荐
野犬寒鸦18 小时前
从零起步学习MySQL || 第五章:select语句的执行过程是怎么样的?(结合源码深度解析)
java·服务器·数据库·后端·mysql·adb
QT 小鲜肉18 小时前
【个人成长笔记】Qt 中 SkipEmptyParts 编译错误解决方案及版本兼容性指南
数据库·c++·笔记·qt·学习·学习方法
我是苏苏18 小时前
C#高级:数据库中使用SQL作分组处理4(LAG() 偏移函数)
数据库
wudl556618 小时前
股票300394(天孚通信)2025年4月20日
数据库
IvorySQL19 小时前
PostgreSQL 18 中国贡献者经验分享:开源参与的四点建议
数据库·postgresql·开源
曾凡宇先生19 小时前
openEuler安装jdk,nginx,redis
linux·开发语言·数据库·openeuler
点灯小铭19 小时前
基于单片机的四沟道步进电机玉米补种机设计与实现
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
清风66666619 小时前
基于单片机的双机串口通信与数字串存储系统设计
数据库·单片机·mongodb·毕业设计·课程设计·期末大作业
数据库知识分享者小北19 小时前
AI Agent越用越笨?阿里云AnalyticDB「AI上下文工程」一招破解!
数据库
一匹电信狗20 小时前
【MySQL】数据库表的操作
linux·运维·服务器·数据库·mysql·ubuntu·小程序