Oracle 用plsql *** 作 同时插入两个字段 类型同为NVARCHAR2(20) 的数据 报错

Oracle 用plsql *** 作 同时插入两个字段 类型同为NVARCHAR2(20) 的数据 报错,第1张

oracle在存储时,对于一个字符需要2个或3个字节的存储空间,虽然表定义中为varchar2(4000),但是其实该字段的 data_length为其2倍或3倍长。这种情况下oracle会把data_length长度超过4000的当做LONG型处理,你的表中有两个这样的字段,插入数据时相当于同时 *** 作2个LONG字段,所以报错。

建议减小字段长度或拆分。实在需要的,可以转而采用CLOB字段类型

你是要sql语句还是什么?

如果是Plsql 你选中表然后右击会有个菜单,找到Edit点击,

然后后面有个"+"和"-"号  加号就是增加一列了。如果是sql语句 alter table 你的表名  add 增加的列名 Integer(增加列的字段类型)     希望能帮到你!

如何给oracle导入blob和clob字段

假设给oracle数据库导入blob类型的图片,图片放在目录G:\images下。

1.先创建一个目录directory,命名为IMAGES;

CREATE OR REPLACE DIRE,TORY

IMAGES AS 'G:\test'或者直接在PlSql Directories目录下新建目录;

2.创建一个存储过程,批量导入blob

create or replace procedure img_insert asbeginDECLARE

f_lob bfile--文件类型b_lobblob

--用来存储图片的名称filenamevarchar2(400)begin


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11603162.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存