Database Interface
- Last UpdatedMay 18, 2022
- 2 minute read
The database related interfaces are provided by the interface assemblies:
-
Aveva.Core.Database.dll & Aveva.Core.Database.Filters.dll
This interface has the following main classes:
Namespace: Aveva.Core.Database
-
DatabaseService:
The sole purpose of this class is to open a project. -
DbAttribute:
The class has two purposes:-
Instances of the class are used to identify and pass around attributes
-
The methods allow the retrieval of metadata about an attribute, for example: type, size, Name, pseudo or not, etc. The class is valid for system attributes and User Defined Attributes (UDAs).
-
-
DB:
This class provides information on the opened Data Bases (DBs). -
DbElement:
Instances of DbElement are used to identify an element. This is the main class for reading and writing to the database. The methods cover-
element creation
-
element deletion
-
copy
-
getting/setting attributes and rules
-
navigating the DB
-
evaluating database expressions.
-
-
DbElementType:
The class has two purposes:-
Instances of the class are used to identify and pass around Element types
-
The methods allow the retrieval of metadata about an Element type, for example: Name, description, allowed attributes and members etc.
-
The class is valid for system types and User Defined Element Types (UDETs).
-
DbEvents:
This class contains the mechanisms for subscribing to database events. It covers savework, getwork, undo, redo, flush, refresh, drop events plus capturing general database changes. -
DbExpression:
Class to hold a database expression. These are the same as Programmable Macro Language (PML) 1 expressions. Methods to evaluate expressions are on the DbElement class. -
DbPseudoAttribute:
This Class allows pseudo attribute code to be plugged in for UDAs. -
DbRule:
Class to hold a database rule -
DbUserChanges: This is passed through by the 'database change' event. It contains a list of database changes made since the last 'database change' event was raised. Changes may be queried down to the attribute level.
-
MDB:
Methods to do operations on an Multiple DataBase (MDB), for example: savework, getwork. -
Table:
Various classes to access the internal Dabacon tables, for example: the name table. -
Project:
The main method is to open the MDB.
As well as the class methods there is a lot of functionality that can be accessed via pseudo attributes. The relevant pseudo attributes are listed where relevant.
The classes fall into the following groups:
-
Basic database access, query and modification.
-
DBs, MDBs and Projects
-
Events and pseudo attribute plugins