Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8691567
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 13, 20262026-06-13T00:08:39+00:00 2026-06-13T00:08:39+00:00

CREATE OR REPLACE TRIGGER check_enumber BEFORE INSERT on emp FOR EACH ROW Declare result

  • 0
CREATE OR REPLACE TRIGGER check_enumber
BEFORE INSERT on emp
FOR EACH ROW
Declare result NUMBER;
dnumber NUMBER;
d_name VARCHAR(20);
Begin
check_eno(:new.ENO, result);
IF result = -1 THEN
RAISE_APPLICATION_ERROR (-20502, 'deptno already exist');
insert into emp_audit(ENO,ENAME,SAL,DNAME) values 
(:new.ENO,:new.ENAME,:new.SAL,:new.DNAME);
END IF;

IF Find_Dn(:new.DNAME) = 1 THEN
Select DNO, DNAME INTO dnumber, d_name
FROM dept
WHERE :new.DNAME = d_name;
:new.dno = dnumber;
IF d_name = 'SALES' THEN
:new.COMM := 300;
Update DEPT Set tot_sals = tot_sals + :new.SAL;
Update DEPT Set tot_emps = tot_emps + 1;  
END IF;
END IF; 
END;
/

LINE/COL ERROR


16/13 PLS-00103: Encountered the symbol “=” when expecting one of the
following:
:= . ( @ % ; indicator
The symbol “:= was inserted before “=” to continue.

19/36 PLS-00103: Encountered the symbol “_” when expecting one of the
following:
. ( , * @ % & – + ; / at mod remainder rem return returning
where || multiset
The symbol “. was inserted before “_” to continue.

———————————-New Code and Error Message—————————

SQL> CREATE OR REPLACE TRIGGER check_enumber
  2  BEFORE INSERT on emp
  3  FOR EACH ROW
  4     Declare result NUMBER;
  5     dnumber NUMBER;
  6     d_name VARCHAR(20);
  7  Begin
  8   check_eno(:new.ENO, result);
  9   IF result = -1 THEN
 10     RAISE_APPLICATION_ERROR (-20502, 'deptno already exist');
 11     insert into emp_audit(ENO,ENAME,SAL,DNAME) values
 12             (:new.ENO,:new.ENAME,:new.SAL,:new.DNAME);
 13   END IF;
 14
 15   IF Find_Dname(:new.DNAME) = 1 THEN
 16     Select DNO, DNAME INTO dnumber, d_name
 17     FROM dept
 18     WHERE :new.DNAME :=d_name;
 19     :new.dno = dnumber;
 20     IF d_name = 'SALES' THEN
 21     :new.COMM := 300;
 22     Update DEPT Set tot_sals = tot_sals + :new.SAL;
 23     Update DEPT Set tot_emps = tot_emps + 1;
 24     END IF;
 25     END IF;
 26  END;
 27  /

Warning: Trigger created with compilation errors.

SQL> show errors;
Errors for TRIGGER CHECK_ENUMBER:

LINE/COL ERROR


13/2 PL/SQL: SQL Statement ignored
15/20 PL/SQL: ORA-01745: invalid host/bind variable name
16/11 PLS-00103: Encountered the symbol “=” when expecting one of the
following:
:= . ( @ % ; indicator
The symbol “:= was inserted before “=” to continue.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-13T00:08:40+00:00Added an answer on June 13, 2026 at 12:08 am

    I think, this line :new.dno = dnumber; is causing the first issue(colon missing).

    It should be changed to :new.dno := dnumber;

    For second issue(Thanks Mr. Glenn), please update(remove space in tot _sals) Update DEPT Set tot_sals = tot _sals + :new.SAL; to

     Update DEPT Set tot_sals = tot_sals + :new.SAL;
    

    There seems to be another issue at line WHERE :new.DNAME :=d_name;. Please remove the “:” from the statement as:

     WHERE :new.DNAME = d_name;
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

CREATE OR REPLACE TRIGGER UPDATE_TEST_280510 AFTER insert on TEST_TRNCOMPVISIT declare V_TRNCOMPNO NUMBER(10); CURSOR C1
create or replace trigger insert_test_id before insert on test where(test.name='Ash') begin insert into test(s_no)
I have a trigger in Oracle SQL. CREATE OR REPLACE TRIGGER test BEFORE INSERT
create or replace trigger insert_catid before insert or update or delete on categories for
I have a table trigger like below: CREATE OR REPLACE TRIGGER PAT_BUR_DOB_TRG BEFORE UPDATE
I have the trigger: create or replace TRIGGER JACKET_DELETE BEFORE DELETE ON JACKET FOR
I'm creating a trigger: CREATE OR REPLACE TRIGGER ItemAvgRatingTrigger AFTER INSERT OR UPDATE OF
This is my code: CREATE OR REPLACE TRIGGER unsuccessful_logins AFTER INSERT OR UPDATE ON
I found a trigger in our Oracle Database create or replace trigger pii_user_activation_trigger before
create or replace trigger STUDENT_PERSONAL_DETAIL_T1 AFTER insert or update or delete on STUDENT_PERSONAL_DETAIL for

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.