SQL Anywhere 12.0.1 documentation refreshed: This release of the SQL Anywhere 12.0.1 documentation is a more recent version than the documentation provided when SQL Anywhere 12.0.1 was first released February 15, 2011. It includes the new features and behavior changes up to, and including, EBF 3554 (Windows). In particular, it includes changes required to support the new cloud capabilities in the SQL Anywhere OnDemand Edition.
SQL Anywhere OnDemand Edition is a data management solution that enables independent software vendors (ISVs) to take business applications to the cloud and offer software as a service (SaaS). ISVs can build, deploy, and manage large cloud applications.
Some enhancements and behavior changes have been made to SQL Anywhere to support SQL Anywhere OnDemand Edition. Below is a list of the major changes that have occurred. Other changes are described in more depth in the SQL Anywhere OnDemand Edition documentation at http://dcx.sybase.com/cloud100.
New login mode value for databases in the cloud A new value, CloudAdmin, has been added for the login_mode database option. This login mode is for internal use by the cloud. See login_mode option.
Connect window enhancement in Sybase Central and Interactive SQL The Connect window in Sybase Central and Interactive SQL now provides a Connect to a running database in a cloud option for connecting to a tenant database in the cloud.
ODBC Configuration for SQL Anywhere window enhancement The ODBC Configuration for SQL Anywhere window in the ODBC Data Source Administrator now provides a Connect to a running database in a cloud option for connecting to a tenant database in the cloud.
NodeType (NODE) connection parameter enhancement The NodeType connection value now supports MIRROR and READONLY values:
MIRROR Redirects the application to the tenant's mirror database.
READONLY Redirects the application to any read-only database copy: either a copy node or the mirror copy. If there are no read-only copy nodes, READONLY is equivalent to the MIRROR setting. If there are only read-only copy nodes, READONLY is equivalent to the COPY setting.
New NodeType (NODE) connection parameter behavior change When connecting to a database in the cloud, the default value for the NodeType connection parameter is PRIMARY and automatically redirects you to the tenant's primary database. When NodeType is set to DIRECT, no redirection is used and the connection succeeds only if the database is running on the host specified.
DatabaseName connection parameter required when connecting to cloud databases When connecting to a database in the cloud, you must specify the DatabaseName connection parameter. There is no default database name for databases in the cloud. See DatabaseName (DBN) connection parameter.
ServerName connection parameter restriction in the cloud When connecting to a database in the cloud, you can only use the ServerName connection parameter when the NodeType connection parameter is set to DIRECT. In most cases, you should not specify ServerName or NodeType or DIRECT when connecting to a cloud server. See ServerName (Server) connection parameter.
Enhancements to SQL statements Enhancements have been made to the following statements to facilitate their use with tenant databases in the cloud:
When a database is running in the cloud, some SQL Anywhere statements are not applicable or have restrictions. This information is recorded in the description of the individual functions and system procedures.
Limitations on the results from system procedures and functions when run on a database in the cloud When a database is running in the cloud, some of the SQL Anywhere functions and system procedures only return information about the current tenant database. They do not show information about other tenant databases running on the same cloud server. This information is recorded in the description of the individual functions and system procedures.
Some database options, server options, and connection parameters not available for use in the cloud Some database options, server, options, and connection parameters are not available for use in the cloud. More information can be found in the description for each option or parameter.
Specifying IPv6 addresses For IPv6 addresses that include a port number, you must enclose the address in either square brackets or parentheses. See IPv6 support in SQL Anywhere.
Enhancements to loading tables In previous releases, you could not perform load table operations on temporary tables in a read-only database. This restriction has been removed.
Previously, the LOAD TABLE default for a database running on a primary, a mirror, or a root node server was WITH FILE NAME LOGGING. Now the LOAD TABLE logging default for these types of databases is WITH ROW LOGGING.
Support added for comparing database schemas and making them the same You can use Sybase Central to compare two databases. The comparison generates SQL statements that you can review to determine the differences between two databases. You can execute the SQL statements to make the one database the same as the other database. See Comparing database schemas and Converting a database schema to match another.
Account lockout for DBA users To ensure that DBA users are not locked out of the database indefinitely if they enter an incorrect password, their accounts are locked for one minute once they exceed the specified number of failed connection attempts defined in their login policy. See DBA authentication.
New directory option for OEM.ini file The directory option of the [preferences] section in the OEM.ini file specifies the directory used by the administration tools to save user-specific configuration files. These files contain information related to the administration tools' settings and history. You must specify a fully-qualified directory name that does not end in a delimiter. See Administration tools configuration.
New limits for the Timeout, SendBufferSize, and ReceiveBufferSize TCP protocol options When using TCP/IP, the following protocol options now have upper limits.
ReceiveBufferSize (RCVBUFSZ) protocol option The maximum size that you can specify for a buffer used by the TCP/IP protocol stack is 1 MB.
SendBufferSize (SNDBUFSZ) protocol option The maximum size that you can specify for a buffer used by the TCP/IP protocol stack is 1 MB.
Timeout (TO) protocol option The maximum number of seconds that you can specify to wait for a response when establishing communications (TCP/IP) is 3600 seconds.
If you specify values above these limits, a connection error is returned. See Connection error: %1.
Database mirroring enhancements The -xa server option now supports the following values:
Specifying DBN=* means that any database can use the server as an arbiter.
You can omit the authentication string so that there is no validation of the authentication string provided by a mirror server.
Specifying only one authentication string means that all databases must use that authentication string.
See -xa dbsrv12 server option.
In a high availability, read-only scale-out system, a copy node can act as the arbiter server. You must upgrade all servers in your database mirroring system to use this feature. See Using a copy node as an arbiter.
Statement performance improvements The performance of statements that use stored procedures or user-defined functions has been improved.
LogFormat (LF) protocol option indicates unknown HTTP method for URL If a web request fails due to an unsupported HTTP request method or a URI that is either malformed or missing a required database name, the HTTP method (@M) and HTTP version (@V) return the string ??? and the URI (@U) returns the given request preceded by >>>. See LogFormat (LF) protocol option.
New properties The following connection properties have been added:
The following database properties have been added:
The following database server properties have been added:
Improved performance of statements that use stored procedures or user-defined functions Improvements have been made to the way the database server processes user-defined procedures and functions to improve performance. This performance improvement depends on the number of procedure and user-defined function calls .
ALTER SERVER statement behavior change In previous releases, all clauses of the ALTER SERVER statement cause an automatic commit. The CONNECTION CLOSE clause no longer causes an automatic commit. See ALTER SERVER statement.
OPENSTRING clause enhancement The OPENSTRING clause of the FROM clause now supports the [ NOT | AUTO ] COMPRESSED option and the ENCRYPTED option. The ENCRYPTED option can be used to read files that were created by the UNLOAD statement when the ENCRYPTED clause was specified. See FROM clause.
Enhancements to Certificate Creation utility (createcert) A number of options have been added to the Certificate Creation utility to make it easier to create certificates. See Certificate Creation utility (createcert)
Enhancements to query plan strings Plans now include known values for expressions and long plans also include information about the cached plan for a statement.
When you use application profiling, long plans now include additional information about how a query was optimize and information about the predicates used in a partial index scan.
Query optimization An optimization has been added to infer sargable IN predicates, which can be used for partial index scans from OR predicates that cannot be transformed into AND predicates. See Optimizations performed during query processing.
Support added for ADO.NET Entity Framework 4.2 SQL Anywhere now provides support for the ADO.NET Entity Framework 4.2 Code First feature. See Entity Framework support.
New salocation option for SetupVSPackage .NET assemblies installer The SetupVSPackage application now allows you to specify the location of the SQL Anywhere installation by using the salocation option. See .NET client deployment.
Support added to JDBC 4.0 driver for OSGi bundling The SQL Anywhere JDBC 4.0 driver (sajdbc4.jar) now contains the proper manifest information to allow it to be loaded as an OSGi (Open Services Gateway initiative) bundle. See JDBC support.
SQL Remote supports HTTP/HTTPS as a message system for SQL Remote messages for remote databases. Use the SET REMOTE OPTION command to configure the database.
See:
ALTER TABLE ADD CONSTRAINT requires that not nullable columns be specified when adding a unique constraint Improvements to the ALTER TABLE statement require that all constraint columns must be not nullable when adding a new unique constraint.
MobiLink file transfers are now supported by Android smartphones The DatabaseManager.createFileTransfer method can now be used to transfer files between an Android client and a MobiLink server.
See:
ZLIB compression is now supported by Android smartphones The UltraLiteJ API now supports ZLIB data compression for Android smartphones when synchronizing with a MobiLink server through an HTTPS protocol.
The following methods are available for Android smartphones to allow ZLIB compression:
StreamHTTPParms.setZlibCompression
StreamHTTPParms.setZlibDownloadWindowSize
StreamHTTPParms.setZlibUploadWindowSize
StreamHTTPParms.zlibCompressionEnabled
See:
End-to-end encryption (E2EE) is now supported by Android smartphones The UltraLiteJ API now supports end-to-end encryption for Android smartphones when synchronizing with a MobiLink server through an HTTPS protocol.
The following methods are available for Android smartphones to support E2EE:
StreamHTTPParms.getE2eePublicKey
StreamHTTPParms.setE2eePublicKey
See:
Trusted certificates from the default trusted certificate store for synchronization over the HTTPS protocol are now supported by Android smartphones Certificates are used according to the following rules of precedence:
If the StreamHTTPSParms.setTrustedCertificates method is called, then the certificates from the specified file are used.
If the StreamHTTPSParms.setTrustedCertificates method is not called and certificates were set in the database by the ulinit or ulload utilities, then those certificates are used.
If certificates are not specified by either the StreamHTTPSParms.setTrustedCertificates method or by the ulinit or ulload utilities, and you are on Android, then certificates are read from the operating system's trusted certificate store. This certificate store is used by web browsers when they connect to secure web servers via HTTPS.
See:
Cursor movement methods are now supported by Android smartphones The UltraLiteJ API now supports all the SQL result set navigational methods that are available in other UltraLite APIs.
The following navigational methods are now available for Android smartphones:
ResultSet.afterLast
ResultSet.beforeFirst
ResultSet.first
ResultSet.getRowCount
ResultSet.last
ResultSet.relative
See:
Some BlackBerry-specific ResultSet methods are now also supported by Android smartphones The get methods requiring a string parameter that are supported on BlackBerry smartphones are now available for Android smartphones.
The following methods are now supported by Android:
ResultSet.getBlobInputStream(String name)
ResultSet.getBoolean(String name)
ResultSet.getClobReader(String name)
ResultSet.getBytes(String name)
ResultSet.getDate(String name)
ResultSet.getDecimalNumber(String name)
ResultSet.getDouble(String name)
ResultSet.getFloat(String name)
ResultSet.getLong(String name)
ResultSet.getSize(String name)
ResultSet.getString(String name)
ResultSet.getUUIDValue(String name)
ResultSet.isNull(String name)
ResultSetMetaData methods are now supported by Android smartphones The following methods are now supported on Android smartphones and return values that closely approximate those returned for Blackberry smartphones.
ResultSetMetaData.getAliasName(int column_no)
ResultSetMetaData.getDomainName(int column_no)
ResultSetMetaData.getCorrelationName(int column_no)
ResultSetMetaData.getQualifiedName(int column_no)
ResultSetMetaData.getTableColumnName(int column_no)
ResultSetMetaData.getTableName(int column_no)
ResultSetMetaData.getWrittenName(int column_no)
The DatabaseInfo.getPageSize method is now supported by Android smartphones The DatabaseInfo.getPageSize method now queries the UltraLite database to retrieve the page size.
The DatabaseInfo.getNumberRowsToUpload method is now supported by Android smartphones The DatabaseInfo.getNumberRowsToUpload method now returns the number of rows awaiting upload.
DatabaseInfo.getRelease values returned on Android smartphones now include the build number The DatabaseInfo.getRelease method returns the full software release number.
Extra MobiLink client network protocol option settings are now supported by Android smartphones The StreamHTTPParms.getExtraParameters and StreamHTTPParms.setExtraParameters methods have been added to specify and retrieve a semicolon-delimited list of MobiLink client network protocol options, and support extra options that were not previously supported by Android smartphones.
See:
Error reporting has improved for the DatabaseManager class UltraLiteJ API A ULjException error is now thrown with the SQLE_NOT_CONNECTED error code if the connect or createDatabase methods are called after calling the release method.
Restartable HTTP is available for the UltraLiteJ API When restartable HTTP is enabled, UltraLiteJ can tolerate network interruptions so that synchronizations do not fail as often on unreliable networks.
See:
Null ResultSet handling has improved for the UltraLiteJ API Null values retrieved by the ResultSet.getString method are now returned as null, rather than an empty string.
Row limiting on a BlackBerry smartphone always enables lazy load indexes Databases on BlackBerry smartphones that are accessed with row limiting enabled now always lazy load indexes.
See:
Secure synchronization of a BlackBerry smartphone through a BlackBerry Enterprise Server has improved Some BlackBerry smartphones that synchronize over the HTTPS protocol with a BlackBerry Enterprise Server (BES) may require the ";EndToEndRequired" term to be added to the URL suffix to avoid a synchronization failure.
Database page sizes can be adjusted with the UltraLite Java Edition Database Load Utility with the -z option The new -z option can be used to specify the page size, in bytes, of an UltraLite Java edition database.
Connection.getNewUUID and UUID.toString method support on UltraLite for M-Business Anywhere The Connection.getNewUUID and UUID.toString methods have been reinstated.
See:
The qualified name for a table column can be obtained with the UltraLite C++ API When used in conjunction with the ULResultSetSchema.GetColumnName method, the ul_name_type_qualified identifier of the ul_column_name_type enumeration can obtain the associated qualified name for a column in the ResultSet object.
See:
The Pocket PC 2003 platform is now supported by the UltraLite C++ API UltraLite is now supported on the Pocket PC 2003 platform. Support for TLS and HTTPS synchronization encryption is not available.
Xcode 4.2 support added to CustDB and Names samples The CustDB and Names samples are now supported by Xcode 3.2 and 4.2.
collect_network_data protocol has been added to the mlsrv12 -x option Use the collect_network_data protocol option with the mlsrv12 -x option to enable synchronization scripts to read network information from each synchronization. See -x mlsrv12 option.
Updates to non-synchronized columns Updates to non-synchronized columns (except the timestamp column or logical delete column defined in the synchronization model) no longer update the timestamp column when a trigger is used in the synchronization model to maintain the timestamp.
Table mapping direction menus The table mapping direction menus remain enabled after changing the mapping direction to "Not synchronized". See Modifying table and column mappings.
-qi option for mlsis and dbmlsync The -qi option is now included in the usage information for mlsis and dbmlsync. See -qi dblsn option and -qi dbmlsync option.
New error messages for mlreplay The following error messages have been added for the MobiLink replay utility:
MLGENREPLAYAPI_FAILED_TO_DETERMINE_CLIENT_TYPE (-5062) Unable to determine whether or not the recorded protocol came from a dbmlsync client.
MLREPLAY_INCOMPATIBLE_RECORDED_PROTOCOL_VERSION (-5075) %1 is an incompatible recorded protocol version with this version of mlreplay.
MLGENREPLAYAPI_INCOMPATIBLE_RECORDED_PROTOCOL_VERSION (-5076) %1 is an incompatible recorded protocol version with this version of the Replay API generator.
Enhanced dbmlsync logging Dbmlsync now prints information about the operating system and machine architecture on which it is running to the log. It also prints the platform for which the executable was compiled. See SQL Anywhere client logs.
Support for SHA2 certificates MobiLink server and MobiLink clients now support certificates signed using SHA2. See trusted_certificate and -x mlsrv12 option.
Relay Server quick deployment on Windows IIS6, IIS7, and Apache Relay Server provides a set of utilities that walk you through the deployment process for Windows IIS 6.0, Windows IIS 7.0 or 7.5, and Apache For more information, see:
Relay Server supports identity forwarding The SAP Gateway provides several means of authenticating clients, including X.509 certificate forwarding through trusted intermediaries. Relay Server can forward identity information from the remote client and forward it to the SAP NetWeaver Gateway or Web Dispatcher using HTTP headers. See Backend farm section properties.
Discuss this page in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |