社区
基础和管理
帖子详情
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),无法执行插入操作,如何解决这个问题?
...全文
588
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
21C 入门到项目开发
本课程是为想要学习
Oracle
数据库管理的初学者而设计的,旨在向学生介绍
Oracle
数据库的基础知识和技能。在本课程中,学生将学习以下内容:1.
Oracle
数据库的基础概念:学生将了解
Oracle
数据库的基础概念,包括数据库管理系统、数据库对象、数据类型、数据模型等。2. SQL语言:学生将学习SQL语言的基础知识,包括SQL查询、数据插入、更新和删除操作、数据聚合和分组等。3. 数据库设计:学生将学习如何设计数据库,包括如何选择适当的数据模型、如何设计表格和
字段
以及如何设置关系。4. 数据库安全性:学生将学习如何保护数据库的安全性,包括用户管理、权限管理、加密和审计等。5. 数据库性能优化:学生将学习如何优化数据库性能,包括索引设计、查询优化、缓存管理和分区等。6. 数据库备份和恢复:学生将学习如何备份和恢复数据库,包括备份和恢复策略、备份工具和恢复过程等。7. 数据库高可用性:学生将学习如何提高数据库的可用性,包括复制、集群和故障转移等。通过本课程,学生将获得
Oracle
数据库管理的基础知识和技能,能够独立管理
Oracle
数据库。
oracle
到底能不能
insert
into 多个values!?
稍微熟悉
oracle
的都知道,如果我们想一条SQL语句向表中插入多个值的话,如果
INSERT
INTO 某表 VALUES(各个值),VALUES(各个值),.....;这样会报错的,因为
oracle
是不支持这种写法的,如果多个
INSERT
INTO VALUEES(各个值);这样以“;”隔开一同执行也是不行的,
oracle
也是不支持的。 不过MySQL这两种方式都是支持的。
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
日常-
oracle
中给date型
字段
insert
into值
如果是mysql数据库,那么直接将now()值插入数据库即可,如果testDate表的datevalue
字段
的数据类型是date,则如下:
insert
into testDate(dateValue) values(now()); 但是
oracle
中直接这样,是会报错的,那么我们用如下方法,我这里总结下: /*如果datecal是date型
字段
*/
insert
into tabname(datecol) value(sysdate) ; -- 用date值
insert
i..
基础和管理
17,377
社区成员
95,128
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章