Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 17 » UltraLite - .NET Programming » UltraLite.NET application development

Connection setup for an UltraLite database

UltraLite applications must connect to a database before carrying out operations on the data in it.

Note The code samples in this chapter are written in Microsoft C#. If you are using one of the other supported development tools, you must modify the instructions appropriately.
Using the ULConnection object

Most applications use a single connection to an UltraLite database and leave the connection open. Multiple connections are only required for multithreaded data access. For this reason, it is often best to declare the ULConnection object as global to the application.

The following properties of the ULConnection object govern global application behavior.

  • Commit behavior

    By default, UltraLite.NET applications are in AutoCommit mode. Each Insert, Update, or Delete statement is committed to the database immediately. You can use ULConnection.BeginTransaction to define the start of a transaction in your application.

  • User authentication

    You can change the user ID and password for the application from the default values of DBA and sql, respectively, by using methods. Each UltraLite database can define a maximum of four user IDs.

  • Synchronization

    A set of objects governing synchronization is accessed from the Connection object.

  • Tables

    UltraLite tables are accessed using methods of the Connection object.

  • Commands

    A set of objects is provided to handle the execution of dynamic SQL statements and to navigate result sets.

Multithreaded applications

Each ULConnection object and all objects created from it should be used on a single thread. If your application requires multiple threads accessing the UltraLite database, each thread requires a separate connection. For example, if you design your application to perform synchronization in a separate thread, you must use a separate connection for the synchronization and you must open the connection from that thread.