Products Services Download
  Support Contact Purchase
 

Delivering data   —   where and when you need it

Schema  > Products  > SRTransport  > Documentation  > Modules  > Database
 

The Database Modules

SRTransport has 3 modules that connect directly to specific databases, Oracle, Sybase and OpenBase. (Note - only the OpenBase module is available on OSX/OSX Server.) These modules use the database APIs and native libraries. SRTransport also has a JDBC module that acts like the database specific modules. (See - Configuring JDBC) The Oracle, OpenBase and JDBC modules will be discussed here, with the minor differences in their interfaces being pointing out. (See The Sybase module for a discussion of that module.)

The module window, whether source or destination, actually represents a connection to a database, and to a specific table in the database.

The module window is divided into three areas.

  1. The database connection information.
  2. The table column information.
  3. SRTransport's modes and special operations.

Connection Information

The icon at the upper left indicates which module is being used.
Next the table and database names are shown.

Options pop-up menu.

The Options menu contains a number of items that allow you to configure the database connection and to communicate directly with the database. The menu varies from module to module.

  • Connection Info
    Brings up a dialog box that contains the connection information for this table.
  • JDBC Drivers (JDBC Module only)
    Brings up the 'JDBC Preferences' window allowing you to add or remove JDBC drivers from SRTransport (Configuring JDBC).
  • Delete All Rows
    This deletes all the data contained in the table. Warning!! This is not undo-able. When you delete the data are permanently removed. (You'll be asked if your sure you want to do this.) This command is very useful when you are developing transports. When you run some transports more than once you will get unique key violations from the database when you try to re-insert data.
  • Interactive SQL
    This brings up a window into which you can type and send SQL to the database.

Column Information

The column info represents the table attributes. Most of the entries are read only.

  • P indicates that the column is the primary key (or part of it).
  • I means identifies. When checked SRTransport uses this column to build WHERE clauses for updates and deletes.
  • Column is the name of the column in the database.
  • U means update. When checked SRTransport will never update this column.
  • Type is SRTransport's internal type for the data.
  • Sys Type is the data type in the database.
  • Size is the max size (width) of the data in the database.
  • Null when checked the column doesn't allow nulls.

SRTransport's modes and special operations

where

Enabled when this is a source window. Allows you to refine the selection of rows. Don't include the 'WHERE' itself.
(where) NAME != NULL

Nulls overwrite

When checked null data will be written to the database in the update modes. Null will never be written when this is unchecked.

mode

When the module window represents a transport source, the only mode available is Select.
When the module window represents a transport destination the other modes are enabled. Insert is the default.

  • Update
    SRTransport will attempt to update this record. SRTransport uses the I identifies columns to determine which row to update.
  • Insert
    This is the default mode. It is used for loading new data into a table.
  • Delete
    SRTransport will attempt to delete this record. SRTransport uses the I identifies columns to determine which row to delete.
  • Update Insert
    In this mode, SRTransport attempts to update the row. SRTransport uses the I identifies columns to determine which row to update. If the SQL update statement affects no rows, then SRTransport attempts to insert the row.
    This mode is most efficient if you expect most transported rows to update existing rows in the target table.
  • Insert Update
    In this mode, SRTransport determines whether or not the row exists in the table, using an SQL select statement. SRTransport uses the I identifies columns to determine which row to select. If it does exist in the table, the row is updated with values from the transported row. If the row doesn't exist in the table, a new row is inserted.
    This mode is the least efficient because it searches for the row before deciding whether to update or insert it.
  • Delete Insert
    In this mode, SRTransport deletes the row, if it exists, from the table before inserting the new row. SRTransport uses the I identifies columns to determine which row to delete.
    It is not an error if the row doesn't exist before inserting it.
Schema Research Corporation webmaster