首页 > 其他分享 >关于“ora-01483:DATE或NUMBER赋值变量的长度无效”的问题

关于“ora-01483:DATE或NUMBER赋值变量的长度无效”的问题

时间:2023-09-07 12:33:50浏览次数:176  
标签:contentTmp 01483 4000 NUMBER content 修改 DATE document tb


在建的表结构中有一个字段类型为varchar2(4000),在页面输入的文字并不多但是后台却报:

关于“ora-01483:DATE或NUMBER赋值变量的长度无效”错误

网上查了一下,最后总结自己可能的原因是:

首先说一下我的那个环境:数据库服务器是oracle,采用hibernate方式保存,页面表单采用的多行文本域,整个项目采用UTF-8编码

解析:

        1、 hibernate里配置是string,但是setString最多长度为2000

        2、采用UTF-8编码,每个字的长度为3,故虽然看起来输入的文字远远不足4000个字节,但是依然报错

解决方法:

       思路是修改表结构把对应该字段的类型由varchar2(4000)修改为CLOB类型,长度依然可以为4000

 

若你现在直接去修改数据库中表字段的类型或采用修改表字段类型的sql脚本语句可以看到会报

那该如何从varchar2(4000)修改为CLOB类型呢?

网上看到一篇文章最后我的修改脚本为:

ALTER TABLE tb_document ADD (contentTmp CLOB);
UPDATE tb_document SET contentTmp=content;
ALTER TABLE tb_document DROP COLUMN content;
ALTER TABLE tb_document RENAME COLUMN contentTmp TO content;

 

即先创建一个字段contentTmp ,然后再把需被修改的字段content中的内容复制到新增的字段contentTmp 中,再接着删除字段content,修改字段contentTmp 名称为content。

标签:contentTmp,01483,4000,NUMBER,content,修改,DATE,document,tb
From: https://blog.51cto.com/u_2544485/7395917

相关文章

  • ElementUI-DateTimePicker时间限制+清空
    1需求有两个时间控件,开始时间不能大于结束时间<el-col:span="8"><el-date-pickerv-model="queryParams.startDate"size="small"type="datetime"......
  • mysql insert into on duplicate key update
    新增如果遇到主键冲突,则更新新建一张表,除了主键id,还有唯一健mobilecreatetableexample_user(idint(4)notnullauto_increment,namevarchar(20),mobilevarchar(20),addressvarchar(100),view_countint(4),primarykey(id),uniqu......
  • 如何使用 Update in Case 语句和列作为别名
    在MySQL中,可以使用UPDATE和CASE语句来更新表中的数据,并且可以使用列别名来引用列。以下是一个示例,展示如何在UPDATE语句中使用CASE和列别名:假设有一个名为users的表,包含id、name和age列。要根据条件更新age列,可以使用如下的UPDATE语句:UPDATEusersSETage=CASEWHENname=......
  • VMware vSphere 8.0 Update 2 下载地址(ESXi 8.0 U2 & vCenter Server 8.0 U2)
    ESXi8.0U2&vCenterServer8.0U2请访问原文链接:https://sysin.org/blog/vmware-vsphere-8-u2/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org企业级工作负载平台vSphere将云计算的优势引入本地部署工作负载。vSphere可提高性能和运维效率并加速创新。vSpher......
  • Android官方资料--OTA Updates
    OTAUpdatesINTHISDOCUMENTAndroiddevicelayoutLifeofanOTAupdateMigratingfromPreviousReleasesAndroiddevicesinthefieldcanreceiveandinstallover-the-air(OTA)updatestothesystemandapplicationsoftware.Deviceshaveaspecialrecove......
  • JavaScript Date UTC & GMT All In One
    JavaScriptDateUTC&GMTAllInOnejs时期时区转换UTC&GMTCoordinatedUniversalTime/协调世界时UTC是最主要的世界时间标准,其以原子时的秒长为基础,在时刻上尽量接近于格林威治标准时间。UTC实际上与GMT基本相同.https://zh.wikipedia.org/zh-hans/协调世......
  • Android官方资料--A/B System Updates
    A/BSystemUpdatesINTHISDOCUMENTOverviewBootloaderstateexamplesUpdateEnginefeaturesLifeofanA/BupdatePost-installstepImplementationKernelpatchesKernelcommandlineargumentsRecoveryBuildvariablesPartitionsFstabKernelslotargumentsOTApacka......
  • android源码分析1--updater(l上)
    一install.cpp中调用updater:constchar*binary="/tmp/update_binary";constchar**args=(constchar**)malloc(sizeof(char*)*5);args[0]=binary;args[1]=EXPAND(RECOVERY_API_VERSION);//definedinAndroid.mkchar*temp=......
  • aosp源码分析 5.0 BlockImageUpdateFn
    block_image_update("/dev/block/bootdevice/by-name/system",package_extract_file("system.transfer.list"),"system.new.dat","system.patch.dat");//args://-blockdevice(orfile)tomodifyin-place......
  • ota升级包中update-script脚本的生成
    控制升级流程的主要逻辑,实际控制着升级过程中大部分重要操作的实施细节,而处于升级包中同目录下的update-bianry负责真正执行update-script记录的操作。 在负责生成升级包的脚本ota_from_target_files.py中,不论我们调用这个脚本来产生全量包,增量包,或者是安卓新加入的block方式的......