HPlogo Getting Started with HP IMAGE/SQL: HP 3000 MPE/ iX Computer Systems > Chapter 4 A Database Example

Defining the TurboIMAGE/XL Database

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Glossary

 » Index

A TurboIMAGE/XL schema is made up of three parts:

  • Password

  • Item

  • Set

The Password Part was discussed in the previous section.

The Item Part contains the list of attributes, called items, in the database. Only a single definition is required, even if the item is used in the database in more than one set. Also included in the Item Part is each item's data type and length. Data types are discussed in the section, "Mapping of Data Types," in Chapter 3 and will not be addressed here.

The Set Part describes the entities, the set type, the security, and the items that make up the entry. Size is also defined, with a capacity value that indicates the maximum number of entries for that entity.

The database schema presented in this section is included with the IMAGE/SQL product and is found in SAMPLEDB.SYS. Practice with this database is in Chapter 6, "Practicing with IMAGE/SQL Using MusicDBE."

The schema for the sample database is as follows:

   Begin data base Music;

   Passwords: 10 MGR;

              20 DIR;

              30 ANNCR;

     Items:

     AlbumCode,       I2;

     AlbumCost,       P8;

     AlbumTitle,      X40;

     Announcer,       X40;

     Birth,           X16;

     BirthPlace,      X40;

     Comment,         X80;

     ComposerName,    X16;

     DateRecorded,    X16;

     Death,           X16;

     EndTime,         X16;

     Medium,          X2;

     MfgCode,         X40;

     Performers,      X40;

     RecordingCo,     X10;

     SelectionName,   X40;

     StartTime,       X16;

     Timing,          X16;


   Sets:

   Name:  Albums, Manual(10,20,30/10,20);

   Entry: AlbumCode (2),

          AlbumTitle,

          Medium,

          AlbumCost,

          RecordingCo,

          DateRecorded,

          MfgCode,

          Comment;

   Capacity: 1000;

   

   Name:  Composers, Manual (10,20,30/10,20);

   Entry: ComposerName (1),

          Birth,

          Death,

          Birthplace,

          Comment;

   Capacity: 1000;



   Name:  Selections-A, Automatic;

   Entry: SelectionName(2);

   Capacity: 1000;



   Name:  Selections, Detail (10,20,30/10,20);

   Entry: AlbumCode (Albums),

          SelectionName (Selections-A),

          ComposerName (Composers),

          Timing,

          Performers,

          Comment;

   Capacity: 1000;

   

   Name:  Log, Detail (10,20,30/10,30);

   Entry: AlbumCode (Albums),

          SelectionName (Selections-A),

          StartTime,

          EndTime,

          Announcer;

   Capacity: 1000;



   End.

The next step is to create a root file for this database with DBSCHEMA as follows:



       :FILE DBSTEXT = MUSICSCH.SAMPLEDB.SYS

       :RUN DBSCHEMA.PUB.SYS;PARM=3


The schema is displayed here, followed by this detail:

    

       DATA SET      TYPE  FLD  PT  ENTR  MED  CAPACITY    BLK  BLK  DISC

         NAME              CNT  CT  LGTH  REC              FAC  LGTH SPACE



       ALBUMS            M  8    2   98    115  1000        4    461  1008

       COMPOSERS         M  5    1   84    95   1000        4    381  752

       SELECTIONS-A      A  1    2   20    37   1000        10   371  304

       SELECTIONS        D  6    3   98    110  1000        4    441  1008

       LOG               D  5    2   58    66   1001        7    463  576

 	   	        TOTAL DISC SECTORS INCLUDING ROOT: 3664





       NUMBER OF ERROR MESSAGES: 0

       ITEM NAME COUNT: 18      DATA SET COUNT: 5

       ROOT LENGTH: 916         BUFFER LENGTH: 463     TRAILER LENGTH: 256



       ROOT FILE MUSIC  CREATED.


Feedback to webmaster