由于在后台项目建表时考虑不周全,导致列的类型选择错误,现需要修改列的类型。

一.varchar2改为clob

MYSQL修改列名写法:ALTER TABLE `表名` CHANGE COLUMN `旧列名` `新列名` DATETIME NULL DEFAULT NULL COMMENT '修改时间' ;

二.oracle中Blob和Clob类型的区别

1.BLOB   
 BLOB全称为二进制大型对象(Binary   Large   Object)。它用于存储数据库中的大型二进制对象。可存储的最大大小为4G字节   
2.CLOB   
 CLOB全称为字符大型对象(Character   Large   Object)。它与LONG数据类型类似,只不过CLOB用于存储数据库中的大型单字节字符数据块,不支持宽度不等的字符集。可存储的最大大小为4G字节

通常像图片、文件、音乐等信息就用BLOB字段来存储,先将文件转为二进制再存储进去。而像文章或者是较长的文字,就用CLOB存储,这样对以后的查询更新存储等操作都提供很大的方便。

JAVA里面对CLOB的操作

  在绝大多数情况下,使用2种方法使用CLOB

  1 相对比较小的,可以用String进行直接操作,把CLOB看成字符串类型即可

  2 如果比较大,可以用 getAsciiStream 或者 getUnicodeStream 以及对应的 setAsciiStream 和 setUnicodeStream 即可

三.CLOB字段和varchar

如果能控制在4000个字符以内的,尽量还是用varchar2(4000 CHAR)吧 如果超过了,也只好用clob了。处理起来其实也还好,基本是在程序里面当作varchar来处理即可

超过就只能用CLOB,12C里面有32K的VARCHAR2,但是实现起来还是CLOB。 如果在CLOB里面存短文本,ORACLE还是会像VARCHAR2一样处理,不会和其他字段分开存储。

四.str绑定值的结尾null字符缺失

首先将数据长度确定出来。注意:中文占用字节长度的问题;根据字符集编码的不同,在oracle里有可能占2或者3个字节。其次查看定义的字段长度,我的字段长度为vachar2(4000),貌似varchar2最长就是4000,好奇的可以去查查这方面的问题。

1.报表中sql定义的最大长度是4000,在sql中如果字节个数大于4000的话, 
一个字符占两个字节,也就是 汉字*2+字母数 不能大于2000 
2.在复制excel粘贴到数据库中得时候也出现报错,原因是有一个单元格中有半个双引号,反映到数据库中识别就有问题了。 
解决办法:去掉半个双引号。
3.我的字段小于4000,没发现多余的引号,回车也去掉了也不行,后来,把excel中很长文本的那一列的格式修改成“文本”,再拷贝到
数据库中,提交就不报错了
终极解决方案:修改列的类型,vachar改成clob

五.复制表格数据

5.1只是复制表结构

当where1=2恒等于false,所以这条语句不能查出任何数据,只能有表结构。所以实现了只复制表结构不复制表数据功能

5.2复制表数据和表结构

ps:

参考网站

https://www.cnblogs.com/Marydon20170307/p/10008762.html

varchar2改为clob的解决步骤相关推荐

  1. Oracle 列由VARCHAR2改为CLOB类型

    最近突然遇到好多Oracle 列由VARCHAR2改为CLOB类型的需求,不知道大家是不是约好了...查了一些网上的文章,结合实际修改的情况记录一下各种场景及解决方法. 一. 示例准备 新建两张表TB ...

  2. varchar2改为clob带来的问题

    为什么80%的码农都做不了架构师?>>>    jdbc的PreparedStatement.setString(),ResultSet.getString()对clob和strin ...

  3. oracle将把varchar2字段(长度4000)改为clob类型

    把表DT_CORP_ENTERPRISE中ASSetsinvestmen字段(varchar2,长度为4000)改为clob类型 --增加大字段项 alter table DT_CORP_ENTERP ...

  4. Oracle中表列由VARCHAR2类型改成CLOB

    情景 原来表中的列定义成VARCHAR2类型,众所周知,VARCHAR2类型最大支持长度为4000.如果由于业务需要,想把此列转换为CLOB类型,在Oracle中直接通过ALTER语句转换是行不通的. ...

  5. 计算机用户win7修改不,Win7电脑时间改不了的解决方法

    在平时的工作中,我们经常会碰到一些问题,其中最常见的就是电脑时间改不了了.其实遇到这个问题很好解决的,但是很多用户都不太懂,为此小编赶紧整理了Win7电脑时间改不了的解决方法来帮助大家,大家赶紧看看吧 ...

  6. oracle将其他字段类型改为clob类型方法

    oracle将其他字段类型改为clob类型方法 FIELD_INSTANCE 表名 FIELD_STRING_VALUE 字段名 第一步:添加一个clob类型的字段 alter table FIELD ...

  7. 华硕主板运行 linux花屏,deepin2014启动花屏问题终于解决!(HD6410D显卡驱动问题,附解决步骤)...

    自ubuntu13.10发行以来,我似乎就和各种最新的linux发行版无缘了:进入图形界面时都会花屏.最近的各种发行版我试了很多:opensuse13.1.ubuntu14.04.linux mint ...

  8. Thread: alter varchar2 column to clob // ORA-22858: invalid alteration of datatype

    https://forums.oracle.com/forums/thread.jspa?threadID=411705 -- 修改字段类型 改为CLOB -- Varchar2 to CLOB -- ...

  9. wps编号无法继续_wps怎么自动编号【解决步骤】

    我们在使用电脑工作的过程中时常会遇到各种奇奇怪怪的问题,比如最近就有不少用户来问小编关于wps怎么自动编号的问题,于是小编就在网上查了一下wps怎么自动编号的解决方法,其实wps怎么自动编号操作起来很 ...

  10. VT-x is disabled in BIOS问题的解决步骤

    VT-x is disabled in BIOS问题的解决步骤 编者:李国帅 qq:9611153 微信lgs9611153 时间:2020-11-24 环境 Android studio 问题描述: ...

最新文章

  1. 网页图片缩放的深入剖析
  2. 串口通信模块4:串口操作自定义类(1)
  3. chrome浏览器崩溃_不只是您:Chrome浏览器在Windows 10的2018年4月更新中崩溃
  4. oracle表存储表空间,Oracle的存储信息-表空间信息记录
  5. matlab mat文件
  6. python获取每月的最后一天_关于日期:使用Python获取本月的最后一天
  7. yolov5模型框架详解
  8. 记录一次面试中的HTTP请求相关问题
  9. Socket服务端与网络调试助手模拟串口服务器通讯示例
  10. 修复VSS 2005
  11. ERP的模块流程/组织架构和其他基础知识
  12. 有关世界上第一台计算机的知识,计算机基础知识 1、世界上第一台电子计算机诞生于 A) 1943年 B) 1946年.doc...
  13. 杨森翔书法:立马越王台
  14. qq邮箱邮件被拦截如何找回的方法
  15. 性能测试结果分析思路
  16. 云真机手机测试平台,能帮我们解决什么问题
  17. cboard企业版源码_CBoard自助BI数据分析产品 v0.4.2
  18. PS磨皮教程系列一:什么叫磨皮以及什么适合磨皮
  19. 京东数科前端春招面经
  20. 新浪微博如何申请API

热门文章

  1. 数模电路基础知识 —— 4. 常见电路符号说明(二极管)
  2. 网络规划设计师教程第二版目录
  3. 电子海图通信态势软件设计与实现
  4. TortoiseSVN文件夹没有绿色对号(√)的解决方案
  5. 随机过程之更新理论的应用
  6. 切比雪夫多项式c语言csdn,切比雪夫多项式(Chebyshev polynomials)
  7. 现代OpenGL教程 01 - 入门指南
  8. 计算机轻量级硬件性能测试软件推荐
  9. php 实现简单的音乐播放器 (音乐上传 音乐列表 音乐删除)
  10. 倩女幽魂7月20日服务器维护,倩女幽魂手游2021年7月22日更新公告