Specifies whether PowerBuilder binds string variables in a program to an internal variable with the Oracle Char or Oracle NChar datatype.
ADO.NET (Oracle.DataAccess.Client only)
O90 Oracle9i
O10 Oracle 10g
NCharBind = value
Parameter |
Description |
---|---|
value |
Specifies whether PowerBuilder binds string variables in a program to an internal variable with the Char or NChar datatype. Values are:
|
NCharBind=0
By default, the Oracle drivers and the ADO.NET driver with the Oracle Data Provider for .NET (ODP.NET) bind the string parameters in statements such as the following as Char datatypes:
dw_1.Retrieve("stringvalue") // Modify data in a DataWindow, then dw_1.Update() // updating string value
// embedded SQL update tbl set col1 = :strVar1 where col2 = :strVar2;
If the string parameters have NChar or NVarChar2 datatypes, set the NCharBind database parameter to 1 before executing statements like these. NCharBind is a dynamic parameter that can be set at any time.
With NCharBind=1, the Oracle drivers bind all string parameters to internal variables with the NChar datatype. If the string parameters are a mix of Char and NChar or NVarChar2 datatypes, set NcharBind=1 to ensure that the NChar data is bound correctly. If all string parameters have a Char datatype, set NcharBind=0 (the default), because binding a Char variable as an NChar datatype substantially downgrades the Oracle database driver's performance.
If you need NChar support in the development environment, set NCharBind to 1 to ensure that NChar data is processed correctly. At runtime, set NCharBind dynamically to avoid a downgrade in performance. Set NCharBind to 1 before processing NChar or NVarChar2 data, then reset it to 0.
To specify that string arguments should be bound as the NChar datatype:
Database profile Select the NChar Bind box on the Transaction tab in the Database Profile Setup dialog box.
Application Type the following in code:
SQLCA.DBParm = "NCharBind=1"