Indexes(TableName: String): IDalIndexes;
TableName. Физическое имя таблицы в БД.
Свойство Indexes возвращает курсор, содержащий системную информацию об индексах указанной таблицы.
Если в качестве значения параметра TableName указана пустая строка, то свойство вернет курсор с информацией о всех индексах всех таблиц, которые имеются в БД.
Sub UserProc;
Var
Driver: IDalDriver;
Connect: IDalConnection;
IndexCur: IDalIndexes;
ConnectDesc: IDalConnectionDescriptor;
ConnectDescParams: IDalConnectionDescriptorParams;
IndexFields: IDalCursorFields;
IndexField: IDalCursorField;
i: Integer;
Begin
Driver := New DalOrcl8Driver.Create;
ConnectDesc := Driver.CreateDescriptor;
ConnectDescParams := ConnectDesc.Params;
ConnectDescParams.Find("User Name").Value := "User";
ConnectDescParams.Find("Password").Value := "Password";
ConnectDescParams.Find("Host BSTR").Value := "OrclServer";
ConnectDescParams.Find("Schema").Value := "Repository";
Connect := ConnectDesc.CreateConnection;
//Параметры индексов таблицы DataTable
IndexCur := Connect.Indexes("DataTable");
IndexFields := IndexCur.Fields;
//Просмотр параметров и их значений
While Not IndexCur.Eof Do
i := i + 1;
Debug.WriteLine("Номер индекса: " + i.ToString);
Debug.Indent;
For Each IndexField In IndexFields Do
Debug.WriteLine(IndexField.Name + " = " + IndexField.Value);
End For;
Debug.Unindent;
IndexCur.Next;
End While;
IndexCur.Close;
Connect.Close;
End Sub UserProc;
При выполнении примера будет осуществлено подключение к репозиторию с указанными параметрами расположения. На базе соединения будет создан курсор с параметрами индексов таблицы «DataTable». Информация о параметрах и их значениях будет выведена в консоль среды разработки.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Dal;
Imports Prognoz.Platform.PiLibNet.Utils;
Sub UserProc();
Var
Driver: DalOrcl8Driver = ComCreator.Instance.CoCreate<DalOrcl8DriverClass>();
Connect: IDalConnection;
IndexCur: IDalIndexes;
ConnectDesc: IDalConnectionDescriptor;
ConnectDescParams: IDalConnectionDescriptorParams;
IndexFields: IDalCursorFields;
IndexField: IDalCursorField;
i: Integer;
Begin
ConnectDesc := Driver.CreateDescriptor();
ConnectDescParams := ConnectDesc.Params;
ConnectDescParams.Find("User Name").Value := "User";
ConnectDescParams.Find("Password").Value := "Password";
ConnectDescParams.Find("Host BSTR").Value := "OrclServer";
ConnectDescParams.Find("Schema").Value := "Repository";
Connect := ConnectDesc.CreateConnection();
//Параметры индексов таблицы DataTable
IndexCur := Connect.Indexes["DataTable"];
IndexFields := IndexCur.Fields;
//Просмотр параметров и их значений
While Not IndexCur.Eof() Do
i := i + 1;
System.Diagnostics.Debug.WriteLine("Номер индекса: " + i.ToString());
System.Diagnostics.Debug.Indent();
For Each IndexField In IndexFields Do
System.Diagnostics.Debug.WriteLine(IndexField.Name + " = " + IndexField.Value);
End For;
System.Diagnostics.Debug.Unindent();
IndexCur.Next();
End While;
IndexCur.Close();
Connect.Close();
End Sub;
См. также: