dbTalk Databases Forums  

Open SQL compliance

comp.databases.ingres comp.databases.ingres


Discuss Open SQL compliance in the comp.databases.ingres forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Colin Hay
 
Posts: n/a

Default Open SQL compliance - 01-08-2010 , 07:40 PM






We are currently trying to make our code 100% compatible with Ingres
Enterprise access for possible ports to non-Ingres databases. I have used
to -wopen flag on compileapp to identify which components have SQL that will
likely fail when run against SQLServer, DB2 or Oracle.

The problem is that I need to produce a distinct list of the problem
scenarios and provide a solution for each one.
Ideally I wanted a single file for each application of all the warnings -
This can be accomplished with errors using the -e flag which shows the
source code in the trace window / log file, but unfortunately this does not
work with warnings.

So I have recompiled each application with -wopen to produce a list of 198
components with warnings
I then have compiled each one individually in the workbench and scrolled
through every warning using ^W to ensure that ALL scenarios have been
identified in this estimation stage.

Here is what the -wopen flag has found, so far .... any alterations /
submissions would be very much appreciated:

CREATE TABLE .... AS SELECT ...
DECLARE TEMPORARY TABLE ... AS SELECT ...
SAVEPOINT
ROLLBACK TO
SET statements
UPDATE ... FROM ....
COPY (ascii)
GRANT
CREATE TABLE ... (....... [WITH|NO] DEFAULT, ...)
MODIFY
DROP (without an object type)
RAISE|REGISTER|ON DBEVENT

My solutions for some of these so far are:

UPDATE FROMs we will build as a string and EXECUTE IMMEDIATE
Ascii COPY statements are built as a string then parsed to convert to the
relevant language syntax then EXECUTE IMMEDIATE
DBEvents have already been coded around using a table/daemon
The rest are much more limited in scope but any suggestions are of course,
appreciated :-)

Obviously the fewer statements that have to be quoted and built as strings
the less the danger of casting failures at runtime - the less testing we
need to do the better !

Colin Hay
Fintechnix

Reply With Quote
  #2  
Old   
Ingres Forums
 
Posts: n/a

Default Re: Open SQL compliance - 01-11-2010 , 01:47 PM






As with any port you need to actually sit down and test with each
backend. Here is a very short list of strategies for the ones you listed
:

Supported in one form or another (still need review but probably ok
as-is)

CREATE TABLE .... AS SELECT ...
DECLARE TEMPORARY TABLE ... AS SELECT ...
GRANT - be careful of all to public with mssql
RAISE|REGISTER|ON DBEVENT -- Oracle ONLY, NOTE review transaction
semantics - see the DPA guide (although this comment applies to all)


Fix'em :-)

UPDATE ... FROM .... (you mention DEI, good idea)
COPY (ascii)
MODIFY -- truncated is supported
DROP (without an object type)
SAVEPOINT
ROLLBACK TO


Review them, e.g. possible leave as-is or Fixem.

CREATE TABLE ... (....... [WITH|NO] DEFAULT, ...)
SET statements (these are considered NOOPS)

Chris


--
clach04

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.