Managing Sybase Metadata

In this section:

When the server accesses a data source, it needs to know how to interpret the data stored there. For each data source the server will access, you create a synonym that describes the structure of the data source and the server mapping of the Sybase data types.


Top of page

x
Creating Synonyms

How to:

Reference:

x

Synonyms define unique names (or aliases) for each Sybase table or view that is accessible from the server. Synonyms are useful because they hide the underlying data source's location and identity from client applications. They also provide support for extended metadata features of the server, such as virtual fields and additional security mechanisms.

Using synonyms allows an object to be moved or renamed while allowing client applications to continue functioning without modification. The only modification required is a redefinition of the synonym on the server. The result of creating a synonym is a Master File and an Access File, which represent the server's metadata.



x
Procedure: How to Create a Synonym

To create a synonym, you must have previously configured the adapter. You can create a synonym from the Applications or Adapters pages of the Web Console.

  1. From the Web Console menu bar, click Applications.

    The Applications page opens.

  2. Click the New button and select Synonym from the drop-down menu.

    The Select adapter to configure or Select connection to create synonym pane opens.

  3. Click a connection for the configured adapter.

    The first of a series of synonym creation panes opens.

  4. Enter values for the parameters required by the adapter as described in the synonym creation parameters reference.
  5. After entering the parameter values, click Create Synonym.

    The Status pane indicates that the synonym was created successfully.

The synonym is created and added under the specified application directory.

Note:



x
Reference: Synonym Creation Parameters for Sybase

The following list describes the synonym creation parameters for which you can supply values.

Restrict Object Type to

Restrict candidates for synonym creation based on the selected object type(s): Tables, Views, External SQL Scripts, and any other supported objects.

Choosing External SQL Scripts from the drop-down list enables you to represent an SQL Query as a synonym for read-only reporting. A Synonym candidate can be any file that contains one (and only one) valid SQL Query and does not contain end-of-statement delimiters (";" or "/") and comments.

Depending on the adapter, you can further restrict your search by choosing check boxes for listed objects.

Database selection

To specify a database from which you can select a table or other object, do one of the following:

  • Check Use current database to use the database that has been set as the default database.
  • Select a database from the Select database drop-down list, which lists all databases in the current DBMS instance.

    Before selecting a database, if Use current database is checked, uncheck it.

This option applies to Sybase ASE; it does not apply to Sybase IQ.

Filter by Owner/Schema and Object name

Selecting this option adds the Owner/Schema and Object Name parameters to the screen.

  • Owner/Schema. Type a string for filtering the selection, inserting the wildcard character (%) as needed at the beginning and/or end of the string. For example, enter: ABC% to select tables or views whose owner/schema begin with the letters ABC; %ABC to select tables or views whose owner/schema end with the letters ABC; %ABC% to select tables or views whose owner/schema contain the letters ABC at the beginning, middle, or end.
  • Object name. Type a string for filtering the object names, inserting the wildcard character (%) as needed at the beginning and/or end of the string. For example, enter: ABC% to select all objects whose names begin with the letters ABC; %ABC to select all whose names end with the letters ABC; %ABC% to select all whose names contain the letters ABC at the beginning, middle, or end.
Location of External SQL Scripts

xIf you specify External SQL Scripts in the Restrict Object type to field, these additional fields are displayed.

The following standard naming conventions apply for UNIX, IBM i IFS, and z/OS HFS:

  • In the Base Location field, specify the physical directory location of the file that contains the SQL Query. You can type a directory name or click on the ellipsis. This opens the Select Base Location dialog box.
  • In the Document Name field, enter the file name with or without wild card characters.
  • In the Document Extension field, enter the extension of the script files to filter the list of candidates.

On IBM i, you can use alternative IFS naming conventions to access library members. The following entry illustrates this method:

  • In the Base Location field, enter:
    /QSYS.LIB/MYLIBRARY.LIB/MYSRC.FILE
  • The Document Extension is understood to be MBR. You can enter this value explicitly or leave the input box blank.

During synonym generation, the adapter issues native API calls to obtain a list of elements in the select list and builds the Master File with a field for each element. The generated Access File references the location of the SQL script in the DATASET attribute, which contains the full path, including the name and extension of the file containing the SQL Query. For example,

DATASET=/ul/home2/apps/report3.sql

When a WebFOCUS report is created, the SQL Query is used to access data.

Cardinality

Select the Cardinality check box to reflect the current cardinality (number of rows or tuples) in the table during metadata creation. Cardinality is used for equi-joins. The order of retrieval is based on the size (cardinality) of the table. Smaller tables are read first.

If the cardinality of the tables to be used in the application are dynamic, it may not be beneficial to choose this setting.

With foreign key

Select the With foreign key check box to include within this synonym every table related to the current table by a foreign key. The resulting multi-table synonym describes all of the foreign key relationships of this table.

Dynamic columns

To specify that the Master File created for the synonym should not contain column information, select the Dynamic columns check box.

If this option is selected, column data is retrieved dynamically from the data source at the time of the request.

For Subquery

Only available when External SQL Scripts is selected from the Restrict objects type to drop-down menu. When selected, a SUBQUERY keyword is added to the Access File of the generated synonym. If the corresponding SQL string is not parameterized (that is, does not contain parameter markers, such as ? or :), it will be processed as a subquery embedded into a FROM clause of the generated SELECT query. Otherwise, the setting will be ignored, and a FOC1782 warning message will be issued. The default is selected (SUBQUERY=Y).

Application

Select an application directory. The default value is baseapp.

Prefix/Suffix

If you have tables with identical table names, assign a prefix or a suffix to distinguish them. For example, if you have identically named human resources and payroll tables, assign the prefix HR to distinguish the synonyms for the human resources tables. Note that the resulting synonym name cannot exceed 64 characters.

If all tables and views have unique names, leave the prefix and suffix fields blank.

Customize data type mappings

To change the data type mappings from their default settings, select this check box. The customizable mappings are displayed.

For information about customizable mappings, see Sybase Data Type Support.

Overwrite Existing Synonyms

To specify that this synonym should overwrite any earlier synonym with the same fully qualified name, select the Overwrite existing synonyms check box.

Note: The connected user must have operating system write privileges in order to recreate a synonym.

Default Synonym Name

This column displays the name that will be assigned to each synonym. To assign a different name, replace the displayed value.

Owner/Schema

The user account that created the object or a collection of objects owned by a user.

Type

The object type (Table, View, and so on).

Select tables

Select tables for which you wish to create synonyms:

  • To select all tables in the list, click the Select All button.
  • To select specific tables, select the corresponding check boxes.


Example: Sample Generated Synonym

An Adapter for Sybase synonym comprises a Master File and an Access File. This is a synonym for the table nf29004.

Generated Master File

FILENAME=NF29004, SUFFIX=SQLSYB  , $
  SEGMENT=NF29004, SEGTYPE=S0, $
    FIELDNAME=DIVISION4, ALIAS=DIVISION4, USAGE=I11, ACTUAL=I4, $
    FIELDNAME=DIVISION_NA4, ALIAS=DIVISION_NA4, USAGE=A25, ACTUAL=A25,
      MISSING=ON, $
    FIELDNAME=DIVISION_HE4, ALIAS=DIVISION_HE4, USAGE=I11, ACTUAL=I4,
      MISSING=ON, $

Generated Access File

SEGNAME=NF29004, TABLENAME=qatst.R729999D.NF29004,
  CONNECTION=IBISYBASE,KEYS=0, $


x
Reference: Mapping Sybase IQ Table Comments Into a Synonym

When a synonym is created, the adapter picks up comments from a Sybase IQ database table and places them in the synonym:



x
Reference: Access File Keywords

This chart describes the keywords in the Access File.

Keyword

Description

SEGNAME

Value must be identical to the SEGNAME value in the Master File.

TABLENAME

Identifies the Sybase table. The value assigned to this attribute can include the name of the owner (also known as schema) and the database link name as follows:

TABLENAME=[owner.]table
CONNECTION

Indicates a previously declared connection. The syntax is:

CONNECTION=connection

CONNECTION=' ' indicates access to the local Sybase database server.

Absence of the CONNECTION attribute indicates access to the default database server.

KEYS

Indicates how many columns constitute the primary key for the table. Range is 0 to 64. Corresponds to the first n fields in the Master File segment.

WRITE

Specifies whether write operations are allowed against the table.

KEYFLD
IXFLD

Supply the names of the primary key and foreign key fields that implement the relationships established by the multi-table Master File. Together, KEYFLD and IXFLD identify the field shared by a related table pair.

  • KEYFLD is the FIELDNAME of the common column from the parent table.
  • IXFLD is the FIELDNAME of the common column from the related table.

KEYFLD and IXFLD must have the same data type. It is recommended, but not required, that their lengths also be the same.

Note: An RDBMS index on both the KEYFLD and IXFLD columns provides the RDBMS with a greater opportunity to produce efficient joins. The columns must have the same data type. If their length is the same, the RDBMS handles the join more efficiently.

AUTO
INCREMENT

Set to Yes to enable auto-incrementing.

START

Initial value in the incrementing sequence.

INCREMENT

Increment interval.

INDEX_NAME
INDEX_UNIQUE
INDEX_COLUMNS
INDEX_ORDER

Indicate a name of the index in a database, uniqueness, name, and order of the indexed column(s).



x
Reference: Managing Synonyms

Once you have created a synonym, you can right-click the synonym name in the Adapter navigation pane of either the Web Console or the Data Management Console to access the following options.

Option

Description

Open

Opens the Master File for viewing and editing using a graphical interface. If an Access file is used it will be also available.

Edit as Text

Enables you to view and manually edit the Master File synonym.

Note: To update the synonym, it is strongly recommended that you use the graphical interface provided by the Open option, rather than manually editing the Master File.

Edit Access File as Text

Enables you to view and manually edit the Access File synonym.

Note: This option is available only when an Access File is created as part of the synonym.

Sample Data

Retrieves up to 20 rows from the associated data source.

Data Profiling

Data Profiling provides the data characteristics for synonym columns.

Alphanumeric columns provide the count of distinct values, total count, maximum, minimum, average length, and number of nulls.

Numeric columns provide the count of distinct values, total count, maximum, minimum, average value, and number of nulls.

Refresh Synonym (if applicable)

Regenerates the synonym. Use this option if the underlying object has been altered.

Data Management

Followed by these options, if applicable:

Recreate DBMS Table. Recreates the data source table. You are asked to confirm this selection before the table is regenerated. (Note that the table will be dropped and recreated. During the process, data may be lost.)

Delete All Data. Deletes all existing data. You are asked to confirm this selection before the data is deleted.

Insert Sample Data. Inserts specified number of sample records, populating all fields with counter values.

Reorganize. Recreates the data source table preserving original data.

Note: This option is not available in the Web Console.

Impact Analysis

Generates reports on procedures, synonyms, and columns that provide information on the flows/stored procedures available on a particular server, and the synonyms and columns they use. These reports enable you to evaluate changes before they are made by showing which components will be affected. See the Server Administration for UNIX, Windows, OpenVMS, IBM i, and z/OS manual for details about Impact Analysis reports.

Copy

Copies the synonym to the clipboard.

Delete

Deletes the synonym. You are asked to confirm this selection before the synonym is deleted.

Cut

Deletes the synonym and places it on the clipboard.

Properties

Displays the properties of the synonym, including physical location, last modified date, description, and privileges.



x
Accessing Different Databases on the Same Sybase Server

When the server connects to Sybase, it uses a primary authorization ID. This ID is associated with a default database on the server. To access tables in another database, you must specify a fully qualified name as follows:

database.owner.table

This fully qualified name can be used in the SQL request. It must be used in the CREATE SYNONYM command for a table in a database other than the default associated with the connected primary authorization ID. If you are allowing access to multiple databases on the same Sybase Server, the user ID specified in the SET CONNECTION_ATTRIBUTES command must have authority to access the database, as well as the tables within the database. This can be achieved by using the Sybase stored procedure sp_adduser and the SQL GRANT statement. For more information, see the Sybase SQL Reference manual.


Top of page

x
Sybase Data Type Support

Reference:

x

The following tables describe how the server maps Sybase ASE and IQ data types.

Sybase ASE and IQ Data Type

Server Data Type

 

Remarks

USAGE

ACTUAL

Date-Time Data Types

DATETIME

ASE: HYYMDs

IQ: HYYMDm

ASE: HYYMDs

IQ: HYYMDm

 

SMALLDATETIME

ASE: HYYMDI

IQ: HYYMDm

ASE: HYYMDI

IQ: HYYMDm

 

DATE

YYMD

DATE

 

TIME

ASE: HHISs

IQ: HHISsm

ASE: HHISs

IQ: HHISsm

 

BIGDATETIME

ASE: HYYMDm

ASE: HYYMDm

ASE only.

BIGTIME

ASE: HHISsm

ASE: HHISsm

ASE only.

TIMESTAMP

IQ: HYYMDm

IQ: HYYMDm

IQ only.

Numeric Data Types

INTEGER

I11

I4

 

SMALLINT

I6

I4

 

TINYINT

I6

I2

 

DECIMAL (p, s)

ASE: Pn.m

IQ: P33.3

ASE: Pk

IQ: P16

ASE:

p is an integer between 1 and 38.
s is an integer between 0 and p.

If s is 0 and p is between 1 and 31, n = p + 1.

If s is 0 and p is between 32 and 38, n = 32.

If s is greater than 0 and p is between 1 and 31, n = p + 2. and m = s.

If s is greater than 0 and p is between 32 and 38, n = 33 and m = 31.

If p is between 1 and 31, k = (p / 2) + 1.
If p is between 32 and 38, k = 16.

Note that if the column is nullable, p is greater than or equal to 8.

IQ:

p is an integer between 1 and 126.
s is an integer between 0 and p.

NUMERIC (p, s)

P33.31

P16

ASE:

p is an integer between 1 and 38.

s is an integer between 0 and p.

IQ:

p is an integer between 1 and 126.

s is an integer between 0 and p.

IDENTITY

ASE: P12

IQ: I11

ASE: P6

IQ: I4

 

MONEY

ASE: D20.2

IQ: P21.4

ASE: D8

IQ: P10

 

SMALLMONEY

ASE: D20.2

IQ: P12.4

ASE: D8

IQ: P8

 

FLOAT

D20.2

D8

 

REAL

D20.2

D8

 

BIGINT

ASE: P20

IQ: P21

ASE: P10

IQ: P11

 

UNSIGNED INTEGER

P11

P8

 

UNSIGNED BIGINT

ASE: P20

IQ: P22

ASE: P11

IQ: P11

 

UNSIGNED SMALLINT

ASE: I7

ASE: I4

ASE only, 0- 65535.

DOUBLE

IQ: D20.2

IQ: D8

IQ only.

LOB Data Types

IMAGE

ASE: BLOB

ASE: BLOB

ASE only.

length: 231 - 1
Supported through Reporting Server API.

Other Data Types

BIT

I11

I4

 

The following table describes how the non-Unicode server maps Character data types. This mapping can be changed based on the value of LONGCHAR. The default value is ALPHA.

Sybase ASE and IQ Data Type

Remarks

LONGCHAR ALPHA

LONGCHAR TEXT

USAGE

ACTUAL

USAGE

ACTUAL

TEXT

ASE only.

Am

Am

TX50

TX

BINARY (n)

ASE: n is an integer between 1 and the largest integer supported by the database.

IQ: n is an integer between 1 and 255,

m = 2 * n.

Am

Am

TX50

TX

VARBINARY (n)

ASE: n is an integer between 1 and the largest integer supported by the database.

IQ: n is an integer between 1 and 255,

m = 2 * n.

AmV

AmV

TX50

TX

CHAR (n)

ASE: n is an integer between 1 and the largest integer supported by the database.

IQ: n is an integer between 1 and 32767.

An

An

TX50

TX

VARCHAR (n)

ASE: n is an integer between 1 and the largest integer supported by the database.

IQ: n is an integer between 1 and 32767.

An

An

TX50

TX

NCHAR (n)

ASE only: n is an integer between 1 and the largest integer supported by the database.

An

An

TX50

TX

NVARCHAR (n)

ASE only: n is an integer between 1 and the largest integer supported by the database.

An

An

TX50

TX

Note: The main purpose of the LONGCHAR setting is to provide compatibility with previous releases of the server. This SET parameter was designed to control processing of DBMS Character data types and was never intended for DBMS LOB data types.



x
Reference: Sybase Data Type Support for Unicode

The following table describes how the Unicode server maps Character data types. The server operates in character semantic when configured for Unicode. The LONGCHAR setting does not affect mapping in this case.

Sybase ASE and IQ Data Type

Server Data Type

Remarks

USAGE

ACTUAL

CHAR (n)

An

AnB

n is an integer between 1 and 255.

The column stores n bytes (specified by the ACTUAL attribute) which represent up to n characters (specified by the USAGE attribute).

VARCHAR (n)

AnV

AnVB

n is an integer between 1 and 255.

The column stores up to n bytes (specified by the ACTUAL attribute) which represent up to n characters (specified by the USAGE attribute).

UNICHAR (n)

An

An

ASE only, n is an integer between 1 and 255.

UNIVARCHAR (n)

AnV

AnV

ASE only, n is an integer between 1 and 255.



x
Controlling the Mapping of Large Character Data Types

How to:

Reference:

The SET parameter CONVERSION LONGCHAR controls the mapping of supported Sybase data types listed below. By default, the server maps these data types as alphanumeric (A). The server data type A supports a maximum of 4096 characters for TABLE/MODIFY and 32768 characters for API applications.



x
Reference: Sybase ASE: Mapping of Large Character Data Types

The following table lists data type mappings based on the value of LONGCHAR:

Sybase ASE Data Type

Remarks

LONGCHAR ALPHA or BLOB

LONGCHAR TEXT

USAGE

ACTUAL

USAGE

ACTUAL

TEXT

A32767

A32767

TX50

TX

BINARY (n)

n is an integer between 1 and 255

m = 2 * n

Am

Am

TX50

TX

VARBINARY (n)

n is an integer between 1 and 255

m = 2 * n

AmV

AmV

TX50

TX



x
Syntax: How to Control the Mapping of Large Character Data Types (Sybase ASE)
ENGINE SQLSYB SET CONVERSION LONGCHAR {ALPHA|TEXT|BLOB}

where:

SQLSYB

Indicates the adapter. You can omit this value if you previously issued the SET SQLENGINE command.

ALPHA

Maps the Sybase data types TEXT, BINARY, and VARBINARY as alphanumeric (A). ALPHA is the default value.

TEXT

Maps the Sybase data types TEXT, BINARY, and VARBINARY as text (TX). Use this value for WebFOCUS applications.

BLOB

For UNIX, Windows, OpenVMS, and IBM i, is identical to ALPHA. That is, it maps the Sybase data types TEXT, BINARY, and VARBINARY as alphanumeric (A).

For z/OS, maps the Sybase data types TEXT, BINARY, and VARBINARY as binary large object (BLOB).



x
Reference: Sybase IQ: Mapping of Large Character Data Types

The following table lists data type mappings based on the value of LONGCHAR:

 

Sybase IQ Data Type

 

Remarks

LONGCHAR ALPHA

LONGCHAR BLOB

LONGCHAR TEXT

USAGE

ACTUAL

USAGE

ACTUAL

USAGE

ACTUAL

BINARY (n)

n is an integer between 1 and 255m = 2 * n

Am

Am

BLOB

BLOB

TX50

TX

VARBINARY (n)

n is an integer between 1 and 255m = 2 * n

AmV

AmV

BLOB

BLOB

TX50

TX



x
Syntax: How to Control the Mapping of Large Character Data Types (Sybase IQ)
ENGINE SQLSYB SET CONVERSION LONGCHAR {ALPHA|TEXT|BLOB}

where:

SQLSYB

Indicates the adapter. You can omit this value if you previously issued the SET SQLENGINE command.

ALPHA

Maps the Sybase data types CHAR, VARCHAR, BINARY, and VARBINARY as alphanumeric (A). ALPHA is the default value.

TEXT

Maps the Sybase data types CHAR, NCHAR, VARCHAR, BINARY, and VARBINARY as text (TX). Use this value for WebFOCUS applications.

BLOB

Maps the Sybase data types CHAR, VARCHAR, BINARY, and VARBINARY as BLOB.


Top of page

x
Controlling the Mapping of Variable-Length Data Types

How to:

Reference:

For Sybase ASE, the SET parameter VARCHAR controls the mapping of the Sybase data types VARCHAR, VARCHAR2, and NVARCHAR2. By default, the server maps these data types as variable character (AnV).

For Sybase IQ, the SET parameter VARCHAR controls the mapping of the Sybase data types VARCHAR and VARBINARY. By default, the server maps these data types as variable character (AnV).



x
Reference: Sybase ASE: Mapping of Variable-Length Data Types

The following table lists data type mappings based on the value of VARCHAR:

 

Sybase ASE Data Type

 

Remarks

VARCHAR ON

VARCHAR OFF

USAGE

ACTUAL

USAGE

ACTUAL

VARCHAR (n)

n is an integer between 1 and 255

AnV

AnV

An

An

NVARCHAR (n)

n is an integer between 1 and 255

AnV

AnV

An

An

VARBINARY (n)

n is an integer between 1 and 255m = 2 * n

AmV

AmV

Am

Am



x
Syntax: How to Control the Mapping of Variable-Length Data Types (Sybase ASE)
ENGINE SQLSYB SET VARCHAR {ON|OFF}

where:

SQLSYB

Indicates the adapter. You can omit this value if you previously issued the SET SQLENGINE command.

ON

Maps the Sybase data types VARCHAR, VARCHAR2, and NVARCHAR2 as variable-length alphanumeric (AnV). This is required for Unicode environments. ON is the default value.

OFF

Maps the Sybase data types VARCHAR, VARCHAR2, and NVARCHAR2 as alphanumeric (A).



x
Reference: Sybase IQ: Mapping of Variable-Length Data Types

The following table lists data type mappings based on the value of VARCHAR:

 

Sybase IQ Data Type

 

Remarks

VARCHAR ON

VARCHAR OFF

USAGE

ACTUAL

USAGE

ACTUAL

VARCHAR (n)

n is an integer between 1 and 255

AnV

AnV

An

An

VARBINARY (n)

n is an integer between 1 and 255

m = 2 * n

AmV

AmV

Am

Am



x
Syntax: How to Control the Mapping of Variable-Length Data Types (Sybase IQ)
ENGINE SQLSYB SET VARCHAR {ON|OFF}

where:

SQLSYB

Indicates the adapter. You can omit this value if you previously issued the SET SQLENGINE command.

ON

Maps the Sybase data types VARCHAR and VARBINARY as variable-length alphanumeric (AnV). ON is the default value.

OFF

Maps the Sybase data types VARCHAR and VARBINARY as alphanumeric (A).


Top of page

x
Trailing Blanks in SQL Expressions

The new SQL Expression generator in the TABLE Adapter by default preserves literal contents, including trailing blanks in string literals and the fractional part and exponential notation in numeric literals. This allows greater control over the generated SQL.

In some rare cases when trailing blanks are not needed, the following syntax

ENGINE SQLSYB SET TRIM_LITERALS ON

is available to ensure backward compatibility.


Top of page

x
Changing the Precision and Scale of Numeric Columns

How to:

You can alter the length and scale of numeric columns returned by a SELECT request to the server by creating different specifications in your login profile or in a stored procedure. The conversion settings are reflected in the Master File in the USAGE and ACTUAL formats of the fields generated by CREATE SYNONYM. This affects how the fields are processed and formatted by the server.

Tip: You can change this setting manually or from the Web Console.



x
Syntax: How to Override the Default Precision and Scale
x
ENGINE SQLSYB SET CONVERSION RESET
ENGINE SQLSYB SET CONVERSION format RESET
ENGINE SQLSYB SET CONVERSION format [PRECISION precision [scale]]
ENGINE SQLSYB SET CONVERSION format [PRECISION MAX]

where:

SQLSYB

Indicates the adapter. You can omit this value if you previously issued the SET SQLENGINE command.

RESET

Returns any previously specified precision and scale values to the adapter defaults. If you specify RESET immediately following the SET CONVERSION command, all data types return to the defaults. If you specify RESET following a particular data type, only columns of that data type are reset.

format

Is any valid format supported by the data source. Possible values are:

INTEGER which indicates that the command applies only to INTEGER columns.

DECIMAL which indicates that the command applies only to DECIMAL columns.

REAL which indicates that the command applies only to single-precision floating-point columns.

Note: Only applies to DB2, CA-IDMS/SQL, Microsoft SQL Server, and Sybase.

FLOAT which indicates that the command applies only to double-precision floating-point columns.

precision

Is the precision. Must be greater than 1 and less than or equal to the maximum allowable value for the data type (see the description of MAX).

scale

Is the scale. This is valid with DECIMAL, FLOAT and REAL data types. If you do not specify a value for scale, the current scale setting remains in effect. The default scale value is 2.

If the scale is not required, you must set the scale to 0 (zero).

MAX

Sets the precision to the maximum allowable value for the indicated data type:

Data Type

MAX Precision

INTEGER

11

DECIMAL

18

REAL

9

FLOAT

20

Note: When issuing the CREATE SYNONYM command while the CONVERSION command is active in the profile, the Master File reflects the scale and length that is set by the CONVERSION command.

However, when issuing a SELECT statement, the answer set description does not use the information in the Master File. The length and scale used for the answer set description depends on whether a CONVERSION command is in effect.

If a CONVERSION command is in effect, the answer set description uses the length and scale that is set by the CONVERSION command.

If a CONVERSION command is not in effect, the answer set description uses the actual length and scale of the data.



Example: Setting the Precision and Scale Attributes

The following example shows how to set the precision attribute for all INTEGER and SMALLINT fields to 7:

ENGINE SQLSYB SET CONVERSION INTEGER PRECISION 7

The following example shows how to set the precision attribute for all DOUBLE PRECISION fields to 14 and the scale attribute to 3:

ENGINE SQLSYB SET CONVERSION FLOAT PRECISION 14 3

The following example shows how to set the precision attribute for all INTEGER and SMALLINT fields to the default:

ENGINE SQLSYB SET CONVERSION INTEGER RESET

The following example shows how to set the precision and scale attributes for all fields to the defaults:

ENGINE SQLSYB SET CONVERSION RESET

iWay Software