Kbase P128111: How to make an existing database variable extent Fixed and add a new variable extent to an existing
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  3/4/2009 |
|
Status: Verified
GOAL:
How to make an existing database variable extent Fixed and add a new variable extent to an existing Area?
GOAL:
How to add a variable database extent to an Area.
FACT(s) (Environment):
Progress 9.x
OpenEdge 10.x
All Supported Operating Systems
OpenEdge Database Category: Configuration
OpenEdge Database Category: Maintenance
FIX:
By adding a new extent to an Area the prostrct command will automatically make the existing variable extent become Fixed at it's current length.
To do this:
1. Create a structure file containing ONLY the extents that you wish to add.
For example, the sports2000 database has a "Cust_Data" area that already has two extents:
d "Cust_Data":9,32;1 .\sports2000_9.d1 f 320
d "Cust_Data":9,32;1 .\sports2000_9.d2
If I want to add one additional Fixed extent and another Variable length extent then I would create an add.st file containing:
d "Cust_Data":9,32;1 .\sports2000_9.d3 f 320
d "Cust_Data":9,32;1 .\sports2000_9.d4
The sports2000_9.d2 extent would automatically become Fixed when the prostrct command is run.
2. Shutdown the database and run the following command to add the additional extents:
$ proshut sports2000 -by
$ prostrct add sports2000 add.st
Please note, since OpenEdge 10.1A functionality was introduced to the prostrct utility in order to add extents online. Please refer to Solution P112415, "How to add database extents online ?"
3. Remember to re-generate your original st file. This is useful for if you ever need to restore your database so that you have a full representation of what your database structure was. The following command will re-generate the sports2000.st file and also produce the structure output to the screen.
$ prostrct list sports2000