× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Thanks Bill.

The problem I'm really having is that I can't seem to get the interactive SQL 
tool to accept any SQL that uses DECLARE xxx

In SQLServer & Oracle, I can type SQL as below into their respective 
interactive SQL tools (to test) and it gets executed.

For SQLServer the working SQL is;

if exists (select * from dbo.sysobjects where id = object_id(N'[0a0a48cc0018cb3a
000000f6433b730e8188]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) 
   TRUNCATE TABLE [0a0a48cc0018cb3a000000f6433b730e8188] 
ELSE 
   CREATE TABLE "0a0a48cc0018cb3a000000f6433b730e8188" 
   (    MODEL_ID nvarchar (255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL, 
        ENTY_ID varchar (255) NULL,
        ...
    )

For Oracle it's;

    declare n number;
    table_not_exist exception;
    pragma exception_init(table_not_exist,-00942);
    begin 
        execute immediate 'truncate table "$user$"."$tableName$"';
        commit; 
        exception 
        when table_not_exist then
            execute immediate 'CREATE TABLE 
                $tableName$ 
                ( MODEL_ID varchar (255) NULL, 
                ENTY_ID varchar (255) NULL, 
                ...
                ) TABLESPACE "SMS_DM_CRMCAT"';
        commit;
    end;

Both work as is in the interactive SQL tool.

What's up with the UDB2 tool ?

--phil

> -----Original Message-----
> From: Bill [mailto:billzbubb@xxxxxxxxxx]
> Sent: Tuesday, October 07, 2003 1:20 PM
> To: Midrange Systems Technical Discussion
> Subject: Re: Create a missing table in SQL ?
> 
> 
> 
> Hall, Philip wrote:
> > BEGIN ATOMIC
> >     DECLARE v_rc INT DEFAULT 0;
> >     SELECT COUNT(*) INTO v_rc
> >         FROM SYSCAT.TABLES
> >         WHERE TABNAME = 'NAMES' ;
> >     IF v_rc = 0 THEN
> >         CREATE TABLE NAMES........;
> >     ELSE
> >   DROP TABEL NAMES;
> >         CREATE TABLE NAMES........;
> >     END IF;
> > END
> 
> Just a suggestion:  Why not change the If statement to be <> 
> 0 then Drop
> the table.  Then Create the table.
> 
> Bill
> 
> _______________________________________________
> This is the Midrange Systems Technical Discussion 
> (MIDRANGE-L) mailing list
> To post a message email: MIDRANGE-L@xxxxxxxxxxxx
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/midrange-l
> or email: MIDRANGE-L-request@xxxxxxxxxxxx
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/midrange-l.
> 
> 


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.