You create a hash structure at the same time you create a table, using
the CREATE TABLE statement, as in the following syntax.
CREATE  [
 PUBLIC 
  PUBLICREAD 
  PRIVATE 
]  TABLE  [Owner.]  TableName  [LANG =TableLanguageName]  (   ColumnName ColumnDataType  [LANG = ColumnLanguageName] [NOT NULL] [,...]  )  [
 UNIQUE HASH ON (HashColumnName[,... ])
PAGES = PrimaryPages 
 [IN DBEFileSetName]
]
Refer to the ALLBASE/SQL Reference Manual for complete syntax and semantics.
The following sequence of statements 
shows how to create the PurchDB.Vendors table using a
hash structure.  Commands to create and add a dedicated DBEFile
to contain the hash structure are also shown, since there must
be sufficiently large empty DBEFiles of 
type TABLE or MIXED available when you
issue the CREATE TABLE statement in creating a hash structure:
   isql=>  BEGIN WORK;
   isql=>  CREATE DBEFile PurchHashF1
   > WITH PAGES = 120, NAME = 'PurchHF1',
   > TYPE = TABLE;
   isql=>  ADD DBEFile PurchHashF1
   > TO DBEFILESET PurchFS;
   isql=>  CREATE PUBLIC TABLE PurchDB.Vendors
   > (VendorNumber      INTEGER           NOT NULL,
   >  VendorName        CHAR(30)          NOT NULL,
   >  ContactName       CHAR(30),
   >  PhoneNumber       CHAR(15),
   >  VendorStreet      CHAR(30)          NOT NULL,
   >  VendorCity        CHAR(20)          NOT NULL,
   >  VendorState       CHAR(2)           NOT NULL,
   >  VendorZipCode     CHAR(10)          NOT NULL,
   >  VendorRemarks     VARCHAR(60) )
   > UNIQUE HASH ON (VendorNumber) PAGES = 101
   > IN PurchFS;
   isql=>  COMMIT WORK;
  | 
Note that all these statements are shown as part of the same transaction.
This ensures that the DBEFiles you create will not be used by any
other transaction before the hash structure is created.