oracle没有double类型,用number类型的
这样试试
CREATE OR REPLACE TRIGGER AccountInsertTouch
BEFORE INSERT ON account
FOR EACH ROW
DECLARE
v_current_balance number(8,2);
BEGIN
v_current_balance := 100000.00;
UPDATE fund set current_balance = :v_current_balance
WHERE fund_account = :new.fund_account and
money_kind = '0';
:new.fund_account = :new.fund_account * 100;
END AccountInsertTouch;
/
这样试试
CREATE OR REPLACE TRIGGER AccountInsertTouch
BEFORE INSERT ON account
FOR EACH ROW
DECLARE
v_current_balance number(8,2);
BEGIN
v_current_balance := 100000.00;
UPDATE fund set current_balance = :v_current_balance
WHERE fund_account = :new.fund_account and
money_kind = '0';
:new.fund_account = :new.fund_account * 100;
END AccountInsertTouch;
/
解决方案 »
- ebs不能为更新或删除保留记录
- 新学ORACLE,高手们帮分析下。
- 数据库自动分析统计打开出错??、
- 求助 : win7 oracle10g 连接不上实例
- 那位帮帮忙,给我一个有效oracle.com.cn邀请码,多谢了
- SQL查询问题(oracle)
- 一条SQL语句就可以完成的问题(希望各位都来参与)
- 关于oracle中MONTHS_BETWEEN(data2,data1)函数的问题?
- 我在导入表时出现错误"导入的表空间无权限"是什么意思啊?
- Win2000 下 oracle ldap 9.0.0.1服务无法启动
- 关于一个.sql中多个触发器和包的问题
- T-sql中的ISNUL函数,在ORACLEZ中有类似的函数吗!
这不是动态sql语句,不需要联编变量
这不是动态sql语句,不需要联编变量
这样的表达只能在fund和account表中都有字段fund_account才行
where 后的fund_account是不是写错了
如果你给出fund和account的表结构,问题就一目了然了。error:
:new.fund_account = :new.fund_account * 100;
right:
:new.fund_account := :new.fund_account * 100;
我改了触发器,简单了很多,但是那个错误。
改过的:
CREATE OR REPLACE TRIGGER FundInsertTouch
BEFORE INSERT ON fund
FOR EACH ROW
WHEN (new.money_kind = 0)
BEGIN
:new.current_balance = 100000.00;
END FundInsertTouch;1、表结构:
Name Null? Type
------------------------------- -------- ----
MONEY_KIND NOT NULL CHAR(1)
CURRENT_BALANCE NOT NULL NUMBER(16,2)
2、show error说没有错误
3、我怀疑还是具体的步骤上出错,而不是触发器本身。
WWW.PCHOME.NET
WWW.PCHOME.NET
我改了触发器,简单了很多,但是一样的warning:(
改过的:
CREATE OR REPLACE TRIGGER FundInsertTouch
BEFORE INSERT ON fund
FOR EACH ROW
WHEN (new.money_kind = 0)
BEGIN
:new.current_balance = 100000.00;
END FundInsertTouch;表结构:
Name Null? Type
------------------------------- -------- ----
MONEY_KIND NOT NULL CHAR(1)
CURRENT_BALANCE NOT NULL NUMBER(16,2)1、Warning: Trigger created with compilation errors.
警告:触发器创建了带着编辑错误
到底是什么意思?可能是由什么错误引起的?
2、我感觉还是操作上的问题,和触发器本身关系不大。
3、我的操作过程:
a)找个编辑器写好触发器。就是上面贴着的改过的一段
b)sqlplus中,sql>提示符下,剪贴上一步写的
c) 回车,键入"/",回车
d) 看见warning
这次少了一个:号 :)
这次少了一个:号 :)
有些错误可以通过察看错误信息自己改过来