Sybase Adaptive
Standard
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
Specify charset
Many times when connecting to Sybase ASE the charset needs to be provided in the connection string. This is done by adding charset=[charset value].
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Charset=iso_1;
Use encrypted password
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;EncryptPassword=1;
Use password encryption or plain text
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;EncryptPassword=2;
Use SSL
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Encryption=ssl;TrustedFile='c:\sybase\ini\trusted.txt';
Connection Pooling
Connection pooling reuse connections from a pool. It saves the connection handle for reuse, instead of open new connections. Connection pooling is turned on by default.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Min Pool Size=5;Max Pool Size=50;
Disable Connection Pooling
It's sometimes a good idea to disable connection pooling for trouble shooting.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Pooling=False;
Connection pooling with idle time out
Specified in seconds, how long a connection can be idle in the pool before the driver closes the connection.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;ConnectionIdleTimeout=600;
Connection pooling with max lifetime
Specified in seconds, how long an underlying connection can exist before the driver closes the underlying connection instead of returning it to the connection pool upon connection object close. Idle pooled connections are closed and removed from the pool once they reach the defined Connection Lifetime.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Connection Lifetime=600;
Cluster Edition connection failover
If opening a connection to the primary server (specified by the Data Source value) is unsuccessful, the driver uses the servers listed in Alternate Servers.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;HASession=1;AlternateServers=anotherASEserver:5001,aThirdASEserver:5005;
Connection failover alternative syntax
This is just another way of specifying failover in the connection string.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;HASession=1;Secondary Data Source=anotherASEserver;Secondary Server Port=5002;
Disable transaction auto-enlistment
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Enlist=0;
Use MS DTC OLE Native protocol for distributed transactions
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;DistributedTransactionProtocol=OLE;
Two connections in same transaction enlistment
Use this if you open two database connections to the same Adaptive Server server and enlist these connections in the same distributed transaction. If not specified (TightlyCoupledTransaction=1;) the distributed transaction may fail.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;TightlyCoupledTransaction=1;
Using the sql.ini file
If the server isn't aliased, you have to use the ip address and port number in the connection string, not ideal as these may change occassionally. Installing sybase on a machine, you will have a "sql.ini" file that maps an alias name to an ip address and a port. That file can be rolled out to all users, and the sql.ini updated when necessary. Use the following connection string to force the AseConnection object to use the interface file.
DSURL='file://c:\sybase\ini\sql.ini?SQL_MIDOFF_OPC1';Database=myDataBase;UID=myUsername;PWD=myPassword;APP=myAppName;
Provide client info to the ASE server
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;ClientHostName=computerName;ClientHostProc=localProcessName;ApplicationName=myAppName;
Set buffer cache size
Default is 20.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;BufferCacheSize=50;
Use OEM code page type
Default is ANSI.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;CodePageType=OEM;
Count last update only
The records affected count returned includes all records happening from all updates or inserts (including triggers) in a stored procedure. Use this to return only the last update/insert count.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;CumulativeRecordCount=0;
Enable bulk load
Using ASEBulkCopy is disabled by default. Use this to allow for different bulk load operations.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;EnableBulkLoad=1;
Set network transfer packet size
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;PacketSize=1024;
Disable server packet size decission
Adaptive Server server versions 15.0 and later wants to choose the optimal packetsize. Use this to disable that feature.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;EnableServerPacketSize=0;
Max packet size
If you are using EnableServerPacketSize but still needs to set an upper limit you can specify that limit in multiples of 512 all the way to 65,536.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;RestrictMaximum PacketSize=4096;
Specify fetch results row count
Use this to control how many rows are received during fetch from server.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;FetchArraySize=50;
Set connection timeout
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;LoginTimeOut=5;
Connection pooling without ping
Default behaviour when obtaining and activating an idle connection from the pool is to ping the server to verify that the underlying connection is valid. Use this connection string to disable ping.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Ping Server=false;
Increase size of text and binary receive
Adaptive server sends no more than 32k of text and binary data as default.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;TextSize=64000;
Activate use of ASE decimals
The AseDecimal support a precision/scale of 78.
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;UseAseDecimal=1;
Use cursors
Data Source=myASEserver;Port=5000;Database=myDataBase;Uid=myUsername;Pwd=myPassword;UseCursor=1;
It's also possible to define the port value together with the data source value, separated either by colon or comma i.e. DataSource=servername,port; or DataSource=servername:port;