Database connections
If you are deploying an executable or component that accesses
a database, your users need access to the DBMS and to the database
your application uses.
Where to install database connectivity files You do not need to deploy database connectivity
files with a client application that relies on a middle-tier
component on another computer to perform database transactions.
Database connectivity files must be deployed on the computer that
interacts with the database server.
You need to:
- If necessary,
install the DBMS runtime (client) files in the application directory
or in a directory on the system path
If your application uses a standalone SQL Anywhere database,
you can install the SQL Anywhere Runtime Edition files on the user’s
computer. For more information, see “SQL Anywhere files”. Otherwise follow the instructions
and licensing rules specified by the vendor. - Make sure each user has access to the database the
application uses
If your application uses a local database, install the database
and any associated files, such as a log file, on the user’s
computer.If your application uses a server database, make sure the
user’s computer is set up to access the database. This
may be the task of a database administrator. - Install any database interfaces your application
uses on the user’s computer - If your application uses the ODBC interface, configure
the ODBC database drivers and data sources, as described in “Configuring ODBC data
sources and drivers”
For more information about database drivers and interfaces,
see:
- “Native database drivers”
- “ODBC database drivers and
supporting files” - “OLE DB database providers”
- “ADO.NET database interface”
- “JDBC database interface”
Native database drivers
Table 41-6 lists
the native database drivers supplied with PowerBuilder. If an application
or component uses the database specified, the file is required on
the computer. The first two characters of the native database file
name are PB, the next three characters identify the database, and
the last two identify the version of PowerBuilder.
| Name | Required for |
|---|---|
| pbin9110.dll | INFORMIX I-Net 9 |
| pbo84110.dll | Oracle 8.0.x and Oracle8i 8.1.x |
| pbo90110.dll | Oracle9i |
| pbo10110.dll | Oracle 10g |
| pbsnc110.dll | SQL Native Client for Microsoft SQL Server |
| pbdir110.dll | Sybase DirectConnect |
| pbase110.dll | Sybase Adaptive Server Enterprise CT-LIB for Adaptive Server 15 only |
| pbsyc110.dll | Sybase Adaptive Server Enterprise CT-LIB |
| pbsyj110.dll | Sybase Adaptive Server Enterprise CT-LIB for EAServer deployment only |
Installed path Program FilesSybaseSharedPowerBuilder
Deployment path Same directory as the application, in a directory on the system
path, or in the App Path registry key.
Registry entries See “App Path registry key”.
Notes When you deploy a PowerBuilder custom class user object to EAServer, you need to use the SYJ
database interface rather than SYC to connect to an Adaptive Server
Enterprise database. You cannot use SYJ in the PowerBuilder development
environment, but you can use the SYJ Database Profile Setup dialog
box to set the appropriate connection parameters. You can then copy
the syntax from the Preview tab into the script for your Transaction object.
ODBC database drivers and supporting files
This section lists files that are required for all ODBC database
connections from PowerBuilder or InfoMaker applications, as well
as files required for a specific database interface or DBMS.
PowerBuilder ODBC interface files
The following PowerBuilder ODBC interface files are required
if your application uses ODBC:
| Name | Description |
|---|---|
| pbodb110.dll | PowerBuilder ODBC interface |
| pbodb110.ini | PowerBuilder ODBC initialization file |
Installed path Program FilesSybaseSharedPowerBuilder
Deployment path Same directory as the application, in a directory on the system
path, or in the App Path registry key.
Registry entries See “App Path registry key”.
Notes The INI and DLL files must be in the same directory. If you
have modified the pbodb110 initialization file,
make sure you deploy the modified version.
Microsoft ODBC files
Table 41-8 lists
the Microsoft ODBC files that are required if your application uses
ODBC.
| Name | Description |
|---|---|
| DS16GT.dll DS32GT.dll ODBC32.dll ODBC32GT.dll ODBCAD32.exe ODBCCP32.cpl ODBCCP32.dll ODBCCR32.dll ODBCINST.cnt ODBCINST.hlp ODBCINT.dll ODBCTRAC.dll |
Microsoft ODBC driver manager, DLLs, and Help files |
Installed path Windows system directory.
Deployment path Windows system directory.
Registry entries None.
Notes The Microsoft ODBC Driver Manager (ODBC32.dll)
and supporting files are usually already installed in the user’s
Windows system directory.
SQL Anywhere files
If your PowerBuilder application uses a SQL Anywhere database,
you need to deploy the SQL Anywhere DBMS as well as SQL Anywhere’s
ODBC database drivers.
Restrictions PowerBuilder includes SQL Anywhere for use during the development process.
However, this product cannot be deployed royalty-free to your users.
If your application requires the data definition language
(DDL), a transaction log, stored procedures, or triggers, see your
Sybase sales representative.
For more information about deploying SQL Anywhere databases
and applications, see the SQL Anywhere documentation.
If your application uses a standalone database, you can deploy
the SQL Anywhere Desktop Runtime System to users’ computers
without incurring additional license fees. The runtime system allows
the user to retrieve and modify data in the database, but does not
allow modifications to the database schema. It does not support
transaction logs, stored procedures, or triggers.
A full installation for the SQL Anywhere driver, runtime engine,
and supporting files is available in the SupportSA10Runtime directory
on the DVD. Table 41-9 lists some of the files that
are installed. For more information see the RuntimeEdition.html
file
in the installed directory.
| Name | Description |
|---|---|
| dbodbc10.dll | SQL Anywhere ODBC driver |
| dbbackup.exe | SQL Anywhere backup utility |
| dbcon10.dll | Connection dialog box, required if you do not provide your own dialog box and your end users are to create their own data sources, if they need to enter user IDs and passwords when connecting to the database, or if they need to display the Connection dialog box for any other purpose |
| dbisqlc.exe | Interactive SQL utility |
| dblgen10.dll | Language-specific string library (EN indicates the English version) |
| dblib10.dll | Interface library |
| dbtool10.dll | SQL Anywhere database tools |
| dbunlspt.exe | SQL Anywhere unload utility |
| dbvalid.exe | SQL Anywhere validation utility |
| rteng10.exe | Restricted runtime engine |
| rteng10.lic | License file for restricted runtime engine |
| dbctrs10.dll | Performance utility |
| dbserv10.dll | Server utility |
Installed path Program FilesSybaseSQL
Anywhere 10win32
Deployment path Same directory as the application, in a directory on the system
path, or in the App Path registry key.
Registry entries See “App Path registry key” and “Configuring ODBC data
sources and drivers”.
Notes Supporting files should be installed in the same directory
as dbodbc10.dll. If you are not using the English
string library, make sure you deploy the appropriate version of
the language-specific string library.
Configuring ODBC data
sources and drivers
ODBC.INI To allow the user to connect to a particular data source,
your installation program must provide a definition for that data
source in the ODBC.INI key in the registry on the computer that
accesses the data source, in HKEY_CURRENT_USER for
a user DSN or in HKEY_LOCAL_MACHINE for a
system DSN. The data source definition specifies the name and location
of the database driver as well as the command required to start
the database engine. The data source in the ODBC Data Sources key
must also be listed in ODBC.INI.
The following shows typical registry entries for a data source
called MyApp DB that uses SQL Anywhere. Registry keys are enclosed
in square brackets and are followed by string values for that key
in the format “Name“=”Value“:
|
1 |
[HKEY_CURRENT_USERSOFTWAREODBCODBC.INIMyApp DB]<br />"Driver"="C:Program FilesSybaseSQL Anywhere 10<br /> win32dbodbc10.dll"<br />"Start"="c:program filessybaseSQL Anywhere 10win32<br /> rteng10.exe -c9m"<br />"UID"="dba"<br />"PWD"="sql"<br />"Description"="Database for my application"<br />"DatabaseFile"="C:Program Filesmyappsmyapp.db"<br />"AutoStop"="Yes"<br /> <br /><br />[HKEY_CURRENT_USERSOFTWAREODBCODBC.INI<br /> ODBC Data Sources]<br />"MyApp DB"="SQL Anywhere 10.0" |
ODBCINST.INI Your installation program needs to make two types of entry
in the ODBCINST.INI key in HKEY_LOCAL_MACHINESOFTWAREODBC for
each driver that your deployed application uses:
- Add
a string value with the name of the driver and the data value “Installed” to
the ODBC DRIVERS key in ODBCINST.INI - Add a new key for each driver to the ODBCINST.INI key
with string values for Driver and Setup
Some drivers require additional string values in ODBCINST.INI.
If the ODBC database driver files are not located in a directory
on the system path, you also need to add their location to the App
Paths key for the executable file.
If you are using ODBC drivers obtained from a vendor, you
can use the driver’s setup program to install the driver
and create registry entries.
The following shows a typical registry entry for SQL Anywhere.
A registry key is enclosed in square brackets and is followed by
string values for the key in the format “Name“=”Value“:
|
1 |
[HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INI<br /> SQL Anywhere 10.0]<br />"Driver"="c:program filessybaseSQL Anywhere 10<br /> win32dbodbc10.dll"<br />"Setup"="c:program filessybaseSQL Anywhere 10<br /> win32dbodbc10.dll" |
For more information about the contents of
the registry entries for ODBC drivers and data sources, see Connecting
to Your Database
.
OLE DB database providers
If your application uses OLE DB to access data, you must install
Microsoft’s Data Access Components software on each user’s
computer if it is not installed already.
The PowerBuilder OLE DB interface requires the functionality
of the Microsoft Data Access Components (MDAC) version 2.8 or higher
software. Version 2.8 is distributed with Windows XP Service Pack
2 and Windows Server 2003.
To check the version of MDAC on a computer, users can download
and run the MDAC Component Checker utility from the MDAC Downloads page
.
On the Windows Vista operating system, the Windows Data Access Components
(DAC) version 6.0 includes some changes to work with Vista but is
otherwise functionally equivalent to MDAC 2.8.
OLE DB data providers installed with MDAC Several Microsoft OLE DB data providers are automatically
installed with MDAC, including the providers for SQL Server (SQLOLEDB) and ODBC (MSDASQL).
PowerBuilder OLE DB interface files
The PowerBuilder OLE DB interface file is required if your
application uses OLE DB. The ODBC initialization file is required
if you have used it to customize OLE DB settings:
| Name | Description |
|---|---|
| pbole110.dll | PowerBuilder OLE DB interface |
| pbodb110.ini | PowerBuilder ODBC initialization file |
Installed path Program FilesSybaseSharedPowerBuilder
Deployment path Same directory as the application, in a directory on the system
path, or in the App Path registry key.
Registry entries See “App Path registry key”.
Notes The INI and DLL files must be in the same directory. If you
have modified the pbodb110 initialization file,
make sure you deploy the modified version.
ADO.NET database interface
The PowerBuilder ADO.NET interface supports the OLE DB, Microsoft
SQL Server .NET, Oracle ODP.NET, and Sybase ASE data providers.
If you use ADO.NET, you must deploy pbado110.dll, pbrth110.dll, Sybase.PowerBuilder.Db.dll, Sybase.PowerBuilder.DbExt.dll,
and, for OLE DB, the OLE DB data provider.
The files pbado110.dll and pbrth110.dll are
standard DLL files, and you can deploy them in the same way as other
PowerBuilder DLLs. However, Sybase.PowerBuilder.Db.dll and Sybase.PowerBuilder.DbExt.dll are
.NET assemblies. You can use one of three techniques to deploy the
files:
- Deploy Sybase.PowerBuilder.Db.dll and Sybase.PowerBuilder.DbExt.dll in
the same directory as the executable file that calls the ADO.NET
driver. - Use a .NET application configuration file to assign
the path of Sybase.PowerBuilder.Db.dll and Sybase.PowerBuilder.DbExt.dll.
The file contains configuration settings that the common language
runtime (CLR) reads as well as settings that the application reads.
For an executable file, the configuration file has the same name
as the executable file with the extension .config.
The pb110.exe.config file in your PowerBuilder
11.0 directory is an example.
For more information about configuration files, see the Microsoft
Visual Studio SDK documentation. - Add the Sybase.PowerBuilder.Db.dll and Sybase.PowerBuilder.DbExt.dll assemblies
to the Global Assembly Cache (GAC). For more information about the
GAC, see the section on the Global Assembly Cache in the Microsoft
Visual Studio SDK documentation. If you use the Runtime Packager,
the assemblies are installed in the GAC.
JDBC database interface
The PowerBuilder JDB interface supports the Sun Java Runtime
Environment (JRE) versions 1.2 and later.
If your application or component uses JDBC connections, you
must deploy the JDB driver as well as the appropriate Java package
for the Java VM you are using. The Java virtual machine and a vendor-supplied
JDBC-compliant driver, such as Sybase jConnect® for JDBC,
must also be installed and configured on the computer that accesses
the data source.
For more information about the Java VM, see “Java support”.
| Name | Description |
|---|---|
| pbjdb110.dll | PowerBuilder JDBC Driver (JDB) for JRE 1.2 or later |
| pbjdbc12110.jar | Java package for PowerBuilder JDB driver and JRE 1.2 or later |
Installed path Program FilesSybaseSharedPowerBuilder
Deployment path Same directory as the application, in a directory on the system
path, or in the App Path registry key.
Registry entries Make sure the CLASSPATH environment variable includes the
PowerBuilder pbjdbc12110.jar file. For example:
|
1 |
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl |
|
1 |
Session ManagerEnvironment] |
|
1 |
"CLASSPATH"="C:Program Filessybaseshared |
|
1 |
PowerBuilderpbjdbc12110.jar;... |
Notes See “PowerBuilder components
on EAServer “ and “Web DataWindow on EAServer “.