RE: SQL Developer - view DDL Formatting

  • From: "Tefft, Michael J" <Michael.J.Tefft@xxxxxxxxxx>
  • To: "ftaheny@xxxxxxxxx" <ftaheny@xxxxxxxxx>, "Powell, Mark" <mark.powell2@xxxxxxx>
  • Date: Wed, 26 Apr 2017 10:35:43 +0000

Ø  I just dont see any good reason to use the attribute list.

As a personal style or standard, you might choose not to override column names 
in the attribute list – but if you are extracting DDL for an existing view then 
you are at the mercy of whoever wrote that view.

i.e. if the original author wrote
CREATE OR REPLACE VIEW V (DOG) as SELECT DUMMY AS CAT FROM DUAL;

Then you definitely need the column specification to correctly re-create the 
view.

Mike Tefft

From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On ;
Behalf Of Fergal Taheny
Sent: Tuesday, April 25, 2017 4:47 PM
To: Powell, Mark <mark.powell2@xxxxxxx>
Cc: Michael D O'Shea/Woodward Informatics Ltd 
<woodwardinformatics@xxxxxxxxxxxxxxxx>; jeff.d.smith@xxxxxxxxxx; 
oracle-l@xxxxxxxxxxxxx
Subject: Re: SQL Developer - view DDL Formatting


Hi Mark

I am of the opinion that views should always have an attribute list since I 
have encountered views where the view column name does not match up to the 
select list column names.

I have a different opinion on this. If I want the column names to differ I use 
an alias in the select statement. The problem I see with the attribute list is 
that it can get out of sync with the attributes in the select list. I just dont 
see any good reason to use the attribute list.

Nor should a new column added to a table automatically appear in any views 
defined on the table.  The sensitivity of the column data has to be considered 
in relation to the purpose and audience of each view that references the table.

Agreed. I didn't say anything about automatically adding columns to views.

When the view is updated you can easily generate the view code from the RDBMS 
Dictionary or using DBMS_METADATA.

Yes thanks but I was just trying to figure out if SQL Developer Database export 
could do this for me.

Regards,
Fergal

Other related posts: