社区
基础和管理
帖子详情
oracle insert into 字段是否有长度限制?
jzbest
2009-09-19 03:28:03
SQL语句如下:
insert into rmwjb(SERIALNO,SM,WJNR,fs) values (:ll_maxsn,:is_bt,:is_wjnr,:ii_fs);
————————————————————————————
当变量ls_wjnr大于一定长度后(2988),无法执行插入操作,如何解决这个问题?
...全文
662
17
打赏
收藏
oracle insert into 字段是否有长度限制?
SQL语句如下: insert into rmwjb(SERIALNO,SM,WJNR,fs) values (:ll_maxsn,:is_bt,:is_wjnr,:ii_fs); ———————————————————————————— 当变量ls_wjnr大于一定长度后(2988),无法执行插入操作,如何解决这个问题?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jzbest
2009-09-22
打赏
举报
回复
[Quote=引用 15 楼 banana_97 的回复:]
使用clob类型或者用varchar2(8000)
[/Quote]
——————————————————————
这个“varchar2(8000)”能用吗?请问,varchar2(****)中,*最大值可取多少?
banana_97
2009-09-22
打赏
举报
回复
使用clob类型或者用varchar2(4000)
banana_97
2009-09-22
打赏
举报
回复
使用clob类型或者用varchar2(8000)
知母康
2009-09-20
打赏
举报
回复
使用clob类型
jzbest
2009-09-20
打赏
举报
回复
[Quote=引用 6 楼 oraclemch 的回复:]
引用 5 楼 jdsnhan 的回复:
SQL codealtertable rmwjb modify jwnrvarchar2(4000);
正解啊,但是为什么varchar2(2000)应该是最大是2000个汉字啊,为什么会在>2988呢才会报错呢?
[/Quote]
————————————————————————
事实上,只要超过2000都会报错,不过我的例子恰好是2988而已。
但是,如果要保存到字段的内容大于4000的话,如何处理呢?
还要关注公众号发手机号
2009-09-20
打赏
举报
回复
[Quote=引用 6 楼 oraclemch 的回复:]
引用 5 楼 jdsnhan 的回复:
SQL codealtertable rmwjb modify jwnrvarchar2(4000);
正解啊,但是为什么varchar2(2000)应该是最大是2000个汉字啊,为什么会在>2988呢才会报错呢?
[/Quote]
难道你插入2000~2987个字符的时候没有报错吗?
jzbest
2009-09-19
打赏
举报
回复
[Quote=引用 5 楼 jdsnhan 的回复:]
SQL codealtertable rmwjb modify jwnrvarchar2(4000);
[/Quote]
——————————————————————————————
如果要导入的字符串长度大于4000的话,如何处理?CLOB
wh62592855
2009-09-19
打赏
举报
回复
2988插入2000当然不行了
就按楼上的方法
把jwnr 字段属性改一下
oraclemch
2009-09-19
打赏
举报
回复
[Quote=引用 5 楼 jdsnhan 的回复:]
SQL codealtertable rmwjb modify jwnrvarchar2(4000);
[/Quote]
正解啊,但是为什么varchar2(2000)应该是最大是2000个汉字啊,为什么会在>2988呢才会报错呢?
jdsnhan
2009-09-19
打赏
举报
回复
alter table rmwjb modify jwnr varchar2(4000);
zhaoweiting0609
2009-09-19
打赏
举报
回复
你定义的太短
liusong_china
2009-09-19
打赏
举报
回复
[Quote=引用楼主 jzbest 的回复:]
SQL语句如下:
insert into rmwjb(SERIALNO,SM,WJNR,fs) values (:ll_maxsn,:is_bt,:is_wjnr,:ii_fs);
————————————————————————————
当变量ls_wjnr大于
一定长度后(2988),
无法执行插入操作,如何解决这个问题?
[/Quote]
wjnr为 Vchar2 ,2000
---------------------------
是你的字段长度定义的小了。。。。。。。。。
试试把wjnr定义为 varchar2(4000),再执行一下SQL:
insert into rmwjb(SERIALNO,SM,WJNR,fs) values (:ll_maxsn,:is_bt,:is_wjnr,:ii_fs);
jzbest
2009-09-19
打赏
举报
回复
wjnr为 Vchar2 ,2000
jzbest
2009-09-19
打赏
举报
回复
jwnr为备注字段、
雪狼__
2009-09-19
打赏
举报
回复
varchar2 类型在9i里支持最大4000个byte;
jzbest
2009-09-19
打赏
举报
回复
[Quote=引用 9 楼 jzbest 的回复:]
按照jdsnhan的方法,问题已经初步解决,打开表显示字段内容已经全部插入。
但是在PB数据窗口中,wjnr列为编辑框,将edit.limit设定为4000之后,仍然无法显示该字段所有内容。
何故?
[/Quote]
——————————————————————
这个我知道,变更数据库表字段长度后,需要重新生成数据窗口:打开数据窗口的SQL,切换到语法窗口,随便加个空格,关闭,保存,即可。
jzbest
2009-09-19
打赏
举报
回复
按照jdsnhan的方法,问题已经初步解决,打开表显示字段内容已经全部插入。
但是在PB数据窗口中,wjnr列为编辑框,将edit.limit设定为4000之后,仍然无法显示该字段所有内容。
何故?
oracle
insert
into values 批量插入
oracle
insert
into values 批量插入
insert
返回-1
oracle
,
Oracle
Insert
Into Select
oracle
函数 的
Oracle
Insert
Into Select在本教程中,您将学习如何使用
Oracle
INSERT
INTO SELECT语句将数据从SELECT语句的结果中插入到表中。
Oracle
INSERT
INTO SELECT语句概述有时候,想要将从其它表中并将其到另一个表中。要做到这一点,可使用
Oracle
INSERT
INTO SELECT语句,如下所示:
INSERT
...
oracle
如何
insert
into 多个values
oracle
如何
insert
into 多个values稍微熟悉
Oracle
的都知道,如果我们想一条SQL语句向表中插入多个值的话,如果如下语句
INSERT
INTO某表 VALUES(各个值),VALUES(各个值),.....;这样会报错的,因为
oracle
是不支持这种写法的,如果多个
INSERT
INTO VALUEES(各个值);这样以“;”隔开一同执行也是不行的,
oracle
也是不支持...
oracle
限制
insert
长度
问题,使用
Oracle
在插入语句中运行字符串常量大小
限制
我试图从生产数据库中将行复制到我自己的小型个人
Oracle
Express数据库中以重新制作一个错误,因为我无法真正进入代码生产。不幸的是,这一行涉及到一列将某种数据结构序列化为列类型,在正常化的神面前大笑。这里的
INSERT
:使用
Oracle
在插入语句中运行字符串常量大小
限制
INSERT
INTO TPM_VIEWS VALUES(5,'Test Repro View',665,1,'00010...
oracle
到底能不能
insert
into 多个values!?
稍微熟悉
oracle
的都知道,如果我们想一条SQL语句向表中插入多个值的话,如果
INSERT
INTO 某表 VALUES(各个值),VALUES(各个值),.....;这样会报错的,因为
oracle
是不支持这种写法的,如果多个
INSERT
INTO VALUEES(各个值);这样以“;”隔开一同执行也是不行的,
oracle
也是不支持的。 不过MySQL这两种方式都是支持的。
基础和管理
17,378
社区成员
95,113
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章