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/

相关推荐
q***46523 小时前
Win10下安装 Redis
数据库·redis·缓存
p***92485 小时前
深入理解与实战SQL IFNULL()函数
数据库·sql·oracle
q***81647 小时前
MySQL:数据查询-limit
数据库·mysql
p***92487 小时前
DBeaver连接本地MySQL、创建数据库表的基础操作
数据库·mysql
JIngJaneIL8 小时前
社区互助|社区交易|基于springboot+vue的社区互助交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·社区互助
晚风吹人醒.8 小时前
缓存中间件Redis安装及功能演示、企业案例
linux·数据库·redis·ubuntu·缓存·中间件
Y***98519 小时前
DVWA靶场通关——SQL Injection篇
数据库·sql
Yawesh_best9 小时前
告别系统壁垒!WSL+cpolar 让跨平台开发效率翻倍
运维·服务器·数据库·笔记·web安全
蒋士峰DBA修行之路9 小时前
实验二十八 SQL PATCH调优
数据库·sql·gaussdb
I***t7169 小时前
一条sql 在MySQL中是如何执行的
数据库·sql·mysql