原因:我是使用 CREATE TABLE XXX AS subquery 进行创建的数据表,主要是将相关的数据聚合在一起,然后通过导出为SQL脚本文件,进行导入到新库中,导致部分INSERT INTO语句,因数据库字符集的不一致生成的CREATE TABLE表结构的字段类型长度不一致,从而会插入失败value too large for column "SCHEMA"."TABLE"."COLUMN" (actual: 519, maximum: 500) ;因为长度不兼容

解决方法就是在对应SELECT的出错字段上,使用CONVERT转换字符集或者使用CAST将类型的长度设置大点,然后CREATE TABLE会根据你设置的字段类型为表结构的类型;但是使用CONVERT转换字符集后,进行查询会导致 ORA-29275: partial multibyte character 错误。

所以我这边解决的方式是使用CAST转换类型吧

CREATE TABLE XXX AS

SELECT CAST(col AS VARCHAR(1000)),... FROM xxx;

CAST函数文档:https://docs.oracle.com/database/121/SQLRF/functions024.htm#SQLRF00613

使用CONVERT函数示例:

CREATE TABLE XXX AS

SELECT CONVERT(col,'AL32UTF8'),... FROM xxx;

CONVERT函数文档:https://docs.oracle.com/database/121/SQLRF/functions041.htm#SQLRF00620

如果只执行CONVERT的SELECT子句,会出错 ORA-29275: partial multibyte character ,但是 CREATE TABLE XXX AS SELECT 一起执行,不会出错,但是查询生成的表也会报错ORA-29275。

Oracle :value too large for column "SCHEMA"."TABLE"."COLUMN" (actual: 519, maximum: 500)的解决方案的更多相关文章

  1. 数据泵导入,报错:ORA-12899: value too large for column "SCOTT"."TEST112"."JOIN" (actual: 9, maximum: 8)

    1.报错: 数据泵执行导入时报错:ORA-12899: value too large for column "SCOTT"."TEST112"."J ...

  2. mysql 提取 schema,table,column names

    参考: https://dzone.com/articles/how-use-linkedin-market-your 表空间信息 https://coderanch.com/t/300498/dat ...

  3. user.table.column, table.column 或列说明无效

    Oracle统计采用别名出错(user.table.column, table.column 或列说明无效) >>>>>>>>>>>& ...

  4. ORA-01747: user.table.column, table.column 或列说明无效

    Oracle.DataAccess.Client.OracleException ORA-01747: user.table.column, table.column 或列说明无效 原因1: 查了一下 ...

  5. Limits on Table Column Count and Row Size Databases and Tables Table Size 最大行数

    MySQL :: MySQL 8.0 Reference Manual :: C.10.4 Limits on Table Column Count and Row Size https://dev. ...

  6. “ORA-01747: user.table.column, table.column 或列说明无效” 的解决方案

    此问题的原因是因为表的列名称使用了Oracle声明的关键字,列名起的不好引起的. 如果列很多,又不好确定是哪个列名使用了关键字,以下建议可供参考: select * from v$reserved_w ...

  7. ORA-12899: value too large for column (actual: 27, maximum: 20)

    导入数据时报错以下错误,这是因为原来的数据库是GBK的,每个汉字两个字节,但新数据库是UTF-8的,每个汉字是三个字节,导致超过长度了. ORA-12899: value too large for ...

  8. 报错:Cannot insert explicit value for identity column in table 't' when identity_insert is set to OFF

    通常情况下,不能向 SQL Server 自增字段插入值,如果非要这么干的话,SQL Server 就会好不客气地给你个错误警告: Server: Msg 544, Level 16, State 1 ...

  9. An explicit value for the identity column in table can only be specified when a column list is used and IDENTITY_INSERT is ON

    If you run into the following error message: An explicit value for the identity column in table '< ...

随机推荐

  1. 我的平安夜-Merry Christmas

    我的平安夜-Merry Christmas 平安夜给自己买的第一个"苹果",嘻嘻. 今夜,不想去学习技术知识点什么的, 我们就想到哪里写哪里,就简单聊聊思维方式吧. 其实我不想做今 ...

  2. mysql is not null 执行效率低

    a表字段类型为int b表字段类型为varchar a left join b时如果查询条件是is not null,效率很快,is  null 效率很低 后来两者改为同类型 int,效率很高

  3. Collection接口和Map接口的 size 方法和 isEmpty方法

    一.Collection接口的 size 方法和 isEmpty方法 int size(); 返回列表中元素的数目,如果这个列表包含超过Integer.MAX_VALUE,则返回Integer.MAX ...

  4. eclipse gradle创建java项目

    参考: https://blog.csdn.net/weixin_33733810/article/details/92438913 一 : 需要在 https://gradle.org/releas ...

  5. k8s集群StatefulSets的Pod调度查询丢失问题?

    k8s集群StatefulSets的Pod调度查询丢失问题? 考点之简单介绍下StatefulSets 和 Deployment 之间有什么本质区别?特定场景该如何做出选择呢? 考点之你能辩证的说说看 ...

  6. Flume介绍安装使用

    APache Flume官网:http://flume.apache.org/releases/content/1.9.0/FlumeUserGuide.html#memory-channel 目录 ...

  7. think php 7天免登录

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. tp 5 框架 ajax软删除,回收站,数据恢复

    //HTML代码: <td> <span onclick="del({$v.id})">删除</span> </td> //ajax ...

  9. linux 系统 解决php -v查看到版本于phpinfo()打印的版本不一致问题

    发现问题的原因: 安装zip扩展后,配置成功,但是使用gitlab合并的时候发生错误,经检查,使用phpinfo打印出来的php版本为7.1,而使用linux度服务器 运行 php -v的版本却是5. ...

  10. python的数据结构和基本语法

    1.支持的数据类型 str(字符串类型).int(整型).flout(浮点型).bool(逻辑值).complex(复数[数学上的]).bytes(字节型).list(列表).tuple(元组[不可以 ...