This was obviously an attempt to "normalize" a table that had codes where values should be. It works, it gets it to 3rd form normalization. Full fourth form normalization would simply have values in the columns where the codes now are. Putting all the code-to-value relations in a single table really doesn't help. I think I'd just substitute the values into the extract-transform. Something like,
INSERT INTO transformtable (State, Status)
Select (select value from statetable where code=state) as state, (select value from statustable where code=status) as status from oldtable;
-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Stone, Joel
Sent: Wednesday, July 25, 2012 11:03 AM
To: 'Midrange Systems Technical Discussion'
Subject: code description handling design
I am building an ETL (Extract, Transform, Load) feed to transfer an old Iseries app's data to a web interface system.
The old system uses many codes. Each code has a description in its own file.
Examples:
* state code TX is described in the STATE file as "TEXAS".
* Status code "A" is described in the activity file as "ACTIVE".
There are 30 or so files.
My choices are:
1. Each pgm goes out to read each file to grab the code description
2. I load all the codes and descriptions into ONE file, and use a common routine to grab the code descriptions.
#1:
Pros: each code file is explicitly named in each pgm
Cons: dozens of files will be added to each pgm, messy code
#2:
Pros: No extra files in each pgm, only the main input & output files Each ETL pgm is very similar Coding seems simpler One common routine handles all code descriptions
Cons: Design may be confusing because app files are not named explicity
Is it worth it to load all these unrelated codes and descriptions into one file??
Any suggestions?
______________________________________________________________________
This outbound email has been scanned for all viruses by the MessageLabs Skyscan service.
For more information please visit
http://www.symanteccloud.com ______________________________________________________________________
--
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.