Database: Integer;
The Database property determines a key of database, SQL query is executed to connect with it.
Executing the example requires that the repository contains a table with the Table_1 identifier and a database with the BD identifier. The schema on which this database is set contains a table with the LOG_TABLE physical name. There is a history of execution of any actions in this table. The table has fields ACTION and DATE_ACTION, in which action description and date when it happened are specified.
Sub Main;
Var
Mb: IMetabase;
Db: IMetabaseObject;
Mu: IMetabaseUpdate;
Root: IMetabaseUpdateFolderNode;
SQLNode: IMetabaseUpdateSqlNode;
DNode: IMetabaseUpdateDataObjectNode;
Begin
Mb := MetabaseClass.Active;
Db := Mb.ItemById("BD").Bind;
Mu := Mb.CreateUpdate;
Root := Mu.RootFolder;
DNode := Root.Add(MetabaseUpdateNodeType.DataObject) As IMetabaseUpdateDataObjectNode;
DNode.Object := MB.ItemById("Table_1");
DNode.UpdatePart := MetabaseObjectUpdatePart.DataMetadata;
SQLNode := Root.Add(MetabaseUpdateNodeType.Sql) As IMetabaseUpdateSQLNode;
SQLNode.Label := "SQL";
SqlNode.Sql((Db As IDatabase).DriverId) := "Insert Into Log_Table (ACTION,DATE_ACTION) Values('Update table Table_1',sysdate)";
SqlNode.Database := Db.Key;
Mu.SaveToFileNF("c:\Update.pefx");
End Sub Main;
After executing this example a new update is created. Data and metadata of the Table_1 table are added in update. SQL operator is also added in update. On executing this SQL operator a new record that contains information about the Table_1 table update is added in the Log_Table table. SQL operator is executed within DB server on which the BD database is set up.
See also: