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

  • Home
  • SEARCH
  • 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 7941683
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 3, 20262026-06-03T23:44:31+00:00 2026-06-03T23:44:31+00:00

I have the following script: ALTER TABLE ODANBIRM ADD (OBID NUMBER(10, 0) ); —————————————————————————-

  • 0

I have the following script:

ALTER TABLE ODANBIRM 
ADD (OBID NUMBER(10, 0) );
----------------------------------------------------------------------------
CREATE OR REPLACE TRIGGER TR_OB_INC 
BEFORE INSERT ON ODANBIRM
FOR EACH ROW 
BEGIN
  SELECT SEQ_OB.NEXTVAL INTO :NEW.OBID FROM DUAL;
END;

-----------------------------------------------------------------------------

DECLARE
CURSOR CUR IS
SELECT ROWID AS RID FROM ODANBIRM;

  RC CUR%ROWTYPE;
BEGIN
  OPEN CUR;

 LOOP
  FETCH CUR INTO RC;

    EXIT WHEN CUR%NOTFOUND;

  UPDATE ODANBIRM SET OBID=SEQ_OB.NEXTVAL WHERE ROWID=RC.RID;
   END LOOP;

 CLOSE CUR;
  COMMIT;
 END;

As you can see I have three different scripts (I’ve seperated them with dashed lines.) If I run this the first script runs but the second script, where I want to create a trigger fails saying “Encountered symbol “DECLARE””. If I take the trigger creation script away I get no error and the first and the last scripts run with no problem. What do I have to do to run them all without getting errors?

EDIT: I then realised that the second script should be just like this:

UPDATE ODANBIRM SET OBID=SEQ_OB.NEXTVAL;

So doing this simple thing in a loop is a waste of time and inefficient. I’ve once heard that one should use as much SQL and as less PL SQL as possible for efficiency. I think it’s a good idea.

  • 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-03T23:44:32+00:00Added an answer on June 3, 2026 at 11:44 pm

    I think it’s / on the line immediately following the end of a script. It’s needed on ALL end of script lines for PL blocks, including the last. so…

    However, do not put it on SQL statements; as it will run it twice (as Benoit points out in comments below!)

    ALTER TABLE ODANBIRM 
    ADD (OBID NUMBER(10, 0) );
    /
    
    CREATE OR REPLACE TRIGGER TR_OB_INC 
    BEFORE INSERT ON ODANBIRM
    FOR EACH ROW 
    BEGIN
      SELECT SEQ_OB.NEXTVAL INTO :NEW.OBID FROM DUAL;
    END;
    /
    
    DECLARE
    CURSOR CUR IS
    SELECT ROWID AS RID FROM ODANBIRM;
    
      RC CUR%ROWTYPE;
    BEGIN
      OPEN CUR;
    
     LOOP
      FETCH CUR INTO RC;
    
        EXIT WHEN CUR%NOTFOUND;
    
      UPDATE ODANBIRM SET OBID=SEQ_OB.NEXTVAL WHERE ROWID=RC.RID;
       END LOOP;
    
     CLOSE CUR;
      COMMIT;
     END;
     /
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have following small script to preview some text before submitting it to store
I have the following SQL: ALTER TABLE dbo.PS_userVariables DROP CONSTRAINT PK_PS_userVariables; ALTER TABLE dbo.PS_userVariables
I have (another) question about indexing. I use the following code: CREATE TABLE [dbo].[PnrDetails1](
I have the following SQL script: USE MyDatabase ALTER DATABASE MyDatabase SET SINGLE_USER WITH
I have the following directory structure : /script/x.js /includes/x.txt /1/2/index.html After hooking a webpage
I have the following script which first shows only the first para of the
I have the following script: Timer=0; function countdown(auctionid){ var auctions; var divs; Timer=Timer+1; if((Timer%10==0)||(Timer==1)){
I have the following script which appears multiple times on my page. I have
I have the following script select c.id from .TBL_COUPONS. as c inner join .TBL_BUSINESS.
I have the following script that works well in Firefox and Chrome (not sure

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.