oracle的问题、求解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle的问题、求解相关的知识,希望对你有一定的参考价值。
2、 编写PL/SQL程序,查询5号员工工资,如果工资小于3000,则加200员工资,并提示信息“5号员工工资已更新。”,如果工资大于3000,则提示信息“5号员工工资为XXX,已达到规定标准。”
表employees结构:
字段名称 字段类型 约束
emp_id number 主键
emp_name varchar2(20)
sex varchar2(20)
title varchar2(20)
wage number
idcard varchar2(12)
dep_id number 外键
如果是的话我给楼上大哥改一改
declare
v_wage employees.wage%type;
begin
select wage into v_wage from employees where emp_id=5;
if v_wage<3000 then
update employees set wage=wage+200 where emp_id=5;
commit;
dbms_output.put_line( wage || '5号员工工资已更新');
else
dbms_output.put_line('5号员工工资为XXX,已达到规定标准。');
end;
楼上的大哥说的对,自己写吧,学会这个绝对有用的,大老爷们总的有点一技之长,PL/SQL学好老牛逼了,楼主好好想想 参考技术A 又是作业吧……
declare
v_wage number;
begin
select wage into v_wage from employees where emp_id=5;
if v_wage<3000 then
update employees set wage=wage+200 where emp_id=5;
commit;
else
dbms_output.put_line('5号员工工资为XXX,已达到规定标准。');
end;
给你参考,不完善的地方自己改一改
孩子作业要自己做,你娘挣点学费不容易,度娘不是亲娘追问
fuck俺上班了
oracle中to_char 的用法求解
现在有一个表a,有一个字段id,类型为number
insert into a values(to_char(100.00,'999,999.00'));
insert into a values(to_char(1000.00,'999,999.00'));
第一行没问题,可以插入,第二行就会出现无效数字的错误
我要怎样修改to_char方法 来实现第二行sql,
求高手
如果你不加FM的话,插入之后会有空格在数字前面,以你写的100.00举例,这样你插入之后100之前就会有3个空格;假如你插入0.00的话,小数点前面那个0是显示不出来的,你看到的应该是 .00 。
你这样写是没有问题的,具体报的错误能贴出来么?追问
这个不会出现0.00的数据,因为数据库设置的不能为空,我是想实现
insert into a values(to_char(1000.00,'999,999.00'));
这行sql,但是实现不了,报的错误:ORA-10722:无效数字
这个说的够明确了么,能解决么?
你这个字段是什么类型的?如果是数字的话由于在1000.00的时候转换为了1,000.00,这样才会报无效数字,因为逗号分隔符不属于数字,你需要把字段类型改成字符类型。并且即使你插入的时候不会有0.00,还是建议你把FM加上,这样不会出现空格的问题。
参考技术A 因为你的a表中的字段是数字型的,所以保存的只能是数值不能保存为带格式的(实际上带格式的数字都是字符串)
第一个可以是因为转换之后是一个可以转换为数值的字符串,而第二个则无法转换为数值。
你应该是需要展现的时候才使用to_char转换为目标格式。 参考技术B 你这个ID字段应该定义成varchar2,而不是number。 参考技术C 类型为number为啥要to_char啊 应该to_number啊追问
因为我要格式化成100,000,000.00这种格式的 to_number能实现么?
追答当然啊
追问把你的sql贴出来 我看看怎么实现的
以上是关于oracle的问题、求解的主要内容,如果未能解决你的问题,请参考以下文章
高分求解,急!!!Java连接Oracle10g 问题 java.sql.SQLException: 无法从套接字读取更多的数据