oracle 在视图里面如何设置指定字段的类型和长度
createorreplaceviewly_view_rs_jglyxxzlasselectto_char(x__joincollegetime)LXRQ,--来校日期t...
create or replace view ly_view_rs_jglyxxzl as
select
to_char(x__joincollegetime) LXRQ ,--来校日期
to_char(null) LYM ,--来源码
to_char(null) LYDQM,--来源地区码
to_char(null) LXYY,--来校原因
to_char(x__before_unit) YDWMC,--原单位名称
to_char(null) YDZZWM,--原党政职务码
to_char(null) YJSZWM,--原技术职务码
to_char(null) YCSXKM,--原从事学科码
to_number(null) YGZZE,--原工资总额
to_number(null) YJHLJT,--原教护龄津贴
x__staff_id JGH
from ds_overall;
下面是中间表
我要 把上面视图里面的数据推送到中间表里 如下 中间表
create table abcdefg
(
lxrq VARCHAR2(8),
lym VARCHAR2(2),
lydqm VARCHAR2(6),
lxyy VARCHAR2(80),
ydwmc VARCHAR2(60),
ydzzwm VARCHAR2(4),
yjszwm VARCHAR2(3),
ycsxkm VARCHAR2(6),
ygzze NUMBER(6,2),
yjhljt NUMBER(6,2),
jgh VARCHAR2(20) not null,
curver NUMBER,
synver NUMBER,
typefalg VARCHAR2(1)
)
我的视图里面 只有几个字段是有值的 其他字段是我人为添加的。 我存储过程编译成功 但是执行有问题
ORA-06502: PL/SQL: numeric or value error: character string buffer too small 出现了这个问题 好像是字段长度小了吧。 请问视图里面那些我定义的字段 如何改成我中间表里面字段的类型和长度。 展开
select
to_char(x__joincollegetime) LXRQ ,--来校日期
to_char(null) LYM ,--来源码
to_char(null) LYDQM,--来源地区码
to_char(null) LXYY,--来校原因
to_char(x__before_unit) YDWMC,--原单位名称
to_char(null) YDZZWM,--原党政职务码
to_char(null) YJSZWM,--原技术职务码
to_char(null) YCSXKM,--原从事学科码
to_number(null) YGZZE,--原工资总额
to_number(null) YJHLJT,--原教护龄津贴
x__staff_id JGH
from ds_overall;
下面是中间表
我要 把上面视图里面的数据推送到中间表里 如下 中间表
create table abcdefg
(
lxrq VARCHAR2(8),
lym VARCHAR2(2),
lydqm VARCHAR2(6),
lxyy VARCHAR2(80),
ydwmc VARCHAR2(60),
ydzzwm VARCHAR2(4),
yjszwm VARCHAR2(3),
ycsxkm VARCHAR2(6),
ygzze NUMBER(6,2),
yjhljt NUMBER(6,2),
jgh VARCHAR2(20) not null,
curver NUMBER,
synver NUMBER,
typefalg VARCHAR2(1)
)
我的视图里面 只有几个字段是有值的 其他字段是我人为添加的。 我存储过程编译成功 但是执行有问题
ORA-06502: PL/SQL: numeric or value error: character string buffer too small 出现了这个问题 好像是字段长度小了吧。 请问视图里面那些我定义的字段 如何改成我中间表里面字段的类型和长度。 展开
4个回答
展开全部
可以在建视图的时候用CAST转换一下
比如:
create or replace view ly_view_rs_jglyxxzl as
select
......
CAST(to_number(null),NUMBER(xxx,xx)) YGZZE,--原工资总额
from ds_overall;
比如:
create or replace view ly_view_rs_jglyxxzl as
select
......
CAST(to_number(null),NUMBER(xxx,xx)) YGZZE,--原工资总额
from ds_overall;
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
视图没法定义字段的类型和长度,只能说你的视图与表对应列的数据类型不匹配,你应该修改表的列类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
视图中字段类型和长度貌似不能改吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询