Specifies a nondefault owner for the extended attribute system tables. These five tables contain default extended attribute information for your database.
When you specify a PBCatalogOwner name that is different from the default owner for your DBMS, PowerBuilder creates a new set of tables with the owner name you specify.
When to specify PBCatalogOwner You must specify the PBCatalogOwner parameter before connecting to the database.
ADO.NET
ASE, SYC and SYJ Sybase Adaptive Server Enterprise
DIR Sybase DirectConnect
I10 Informix
JDB JDBC
ODBC
OLE DB
O90 Oracle9i
O10 Oracle 10g
ORA Oracle 11g
SNC SQL Native Client for Microsoft SQL Server
PBCatalogOwner='owner_name'
The default value for PBCatalogOwner depends on the DBMS you are accessing, as follows:
DBMS |
PBCatalogOwner default value |
---|---|
ADO.NET |
If a value for PBCatalogOwner is not specified in the database profile or in the registry, the default value is the user ID specified in the database profile. |
Informix |
PBCatalogOwner='informix' |
JDBC |
If a value for PBCatalogOwner is not specified in the database profile or in the registry, the default value is the user ID specified in the database profile. |
ODBC |
If a value for PBCatalogOwner is not specified in the database profile or in the PBODBn0 initialization file, the default value is the user ID specified in the database profile. |
OLE DB |
If a value for PBCatalogOwner is not specified in the database profile or in the registry, the default value is the user ID specified in the database profile. |
Oracle |
PBCatalogOwner='SYSTEM' |
SNC |
PBCatalogOwner='dbo' |
Sybase Adaptive Server Enterprise |
PBCatalogOwner='dbo' |
Sybase DirectConnect |
PBCatalogOwner='sqlca.logid' |
When to set When you specify a nondefault owner for the extended attribute system tables, you are in effect creating alternative tables. This is useful if you want to test new validation rules or display formats without overwriting the extended attributes currently in the default tables.
Informix databases For ANSI-compliant databases, the owner name that you specify must be unique but the table name does not have to be unique. You can create multiple sets of catalog tables prefaced with different user names. However, if the database is not ANSI-compliant, the table name must be unique, so that only one set of catalog tables can be created with an assigned owner name.
JDBC databases When you connect to a JDBC database and a value for PBCatalogOwner is set in both the database profile and the registry, the setting in the profile overrides the setting in the registry.
ODBC data sources When you connect to an ODBC data source and a value for PBCatalogOwner is set in both the database profile and the PBODB125 initialization file, the setting in the profile overrides the setting in the PBODB125 initialization file.
DB2 databases When you connect to a DB2 database, you can use the DB2SYSPB.SQL script to create the extended attribute system tables. If you use the DB2SYSPB.SQL script, keep the following in mind:
You can edit the script to change all instances of PBOwner to another name, or leave the table owner as PBOwner in the script (the default).
You can set the PBCatalogOwner parameter to the owner you specified in this script or to PBOwner if you did not edit the script.
This parameter cannot be set dynamically. The value set when the connection is made remains in effect until it is disconnected.
This example shows how to create a new set of extended attribute system tables with the owner TEST. The names of the new tables have the prefix TEST, such as TEST.pbcatcol, TEST.pbcatedt, and so on.
Database profile Type the following in the PB Catalog Table Owner box on the System page in the Database Profile Setup dialog box:
TEST
Application Type the following in code:
SQLCA.DBParm="PBCatalogOwner='TEST'"