# Uniform Database Access (UDA)

> The UDA API is explained with code examples in the User's Guide section. Following is the API Reference Guide:

> ## Meta-dictionary and Dictionary structure management

> mco_metadict_size
> Return the size of the meta-dictionary
> mco_metadict_init
> Initialize the meta-dictionary
> mco_metadict_register
> Register a database dictionary in the meta-dictionary
> mco_metadict_count
> Return the number of registered databases
> mco_metadict_entry
> Return a pointer to a dictionary
> mco_metadict_entry_name
> Return a dictionary entry descriptor by name
> mco_metadict_entry_conn
> Return a dictionary entry descriptor by connection
> mco_dict_struct_count
> Return the number of structures/classes for a dictionary
> mco_dict_struct
> Return a structure/class descriptor
> mco_dict_struct_name
> Return the descriptor for the structure/class referred to by name
> mco_dict_struct_classcode
> Return the descriptor for the structure/class referred to by its class code
> mco_dict_field
> Return a field descriptor
> mco_dict_field_name
> Return a field descriptor by name
> mco_dict_field_init_data
> Return a pointer to the field’s default data value
> mco_dict_index
> Return an index descriptor
> mco_dict_index_name
> Return an index descriptor by name
> mco_dict_ifield
> Return an index field descriptor
> mco_dict_ifield_name
> Return an index field descriptor by name
> mco_dict_nested_ifield
> Return a nested field descriptor
> mco_dict_event
> Return an event descriptor
> mco_dict_collation
> Return a collation descriptor
> mco_dict_collation_count
> Returns the number of collation descriptors
> mco_dict_collation_name
> Returns a collation descriptor by name

> ## Database Control and Data Access

> mco_uda_db_open
> Open the database for UDA
> mco_uda_db_close
> Close the database for UDA
> mco_uda_get_udfmap_size
> Return the amount of memory necessary to keep information about all user-defined functions at runtime
> mco_uda_register_udf
> Register user-defined functions
> mco_uda_new
> Allocate a new object
> mco_uda_delete
> Remove an object
> mco_uda_delete_all
> Delete all objects of the specified class
> mco_uda_checkpoint
> Insert a new object into indexes
> mco_uda_get_class_code
> Get the “native” class code
> mco_uda_updated_bitmap_get_fld
> Returns the field number and position of the updated field
> mco_uda_to_mco
> Make a “native” object handle from a UDA object handle
> mco_uda_from_mco
> Make a UDA object handle from a “native” database object
> mco_uda_lookup
> Perform a database lookup
> mco_uda_get
> Return the field value
> mco_uda_put
> Assign the field value
> mco_uda_blob_append
> Append to a BLOB field
> mco_uda_field_alloc
> Allocate vector elements
> mco_uda_field_erase
> Remove an optional structure field or vector element
> mco_uda_field_free
> Remove an optional structure field or vector element DEPRECATED
> mco_uda_pattern_search
> Perform a database pattern search
> mco_uda_pattern_next
> Move cursor position to the next match in the pattern search
> mco_uda_pattern_size
> Return the amount of memory required for this search pattern

> ## Cursor Control, Events and Collation Management

> mco_uda_cursor
> Initializes a cursor
> mco_uda_from_cursor
> Return a handle to the object in the cursor
> mco_uda_cursor_info
> Return information about the index associated with the cursor
> mco_uda_length
> Return the size (length) of a vector or array
> mco_uda_oid_find
> Search for the object with the specified oid
> mco_uda_locate
> Position the cursor in the index
> mco_uda_compare
> Compare the value(s) referenced by the current position of the cursor with specified value(s)
> mco_uda_register_event_handler
> Register an event handler
> mco_uda_unregister_event_handler
> Unregister an event handler
> mco_uda_async_event_wait
> Block the thread until the event is fired
> mco_uda_async_event_release
> Release the specified event handler
> mco_uda_async_event_release_all
> Release all event handlers
> mco_uda_register_collation
> Register a collation
> mco_uda_get_collmap_size
> Return the size of the collation map structure
> mco_uda_collate_get
> Return a value from the specified collation
> mco_uda_collate_get_range
> Return a string value from the specified collation