Створення бази даних у Delphi, без сторонніх БД
Фільтр задається, як рядок і його визначає властивість Filter, а активність фільтра визначає властивість Filtered, відповідно якщо воно True записи фільтруються. Фільтр задається згідно з усіма правилами програмування Delphi, до яких ви звикли. Фільтр має дуже багато функцій:
1. Арифметичні та логічні функції та оператори порівняння Приклади: a. Population 24 and Rost 300 або Razmer Moskva e. Ves + Rost > 200; f. Vozrast/Ves > 9; 2. Можна виконувати операції над рядками Приклади a. Last_Name = 'Іван'; b. First_Name+Last_Name = 'ІгорПетров'; с. Substring(Last_Name,1,2)= 'Ca'; 3. Також функції дати та часу Приклади a. Year(Birth_Day) = 1986; b. Day(Birth_Day) = 12; 4. Використовуються також оператори Like та In.
Всі можливості фільтрації повністю документовані у файлі довідки Delphi у розділі Developing Database Applications > Using client datasets > Limiting what records appear.
Індексацію визначає властивість IndexFieldNames. Для того, щоб упорядкувати за зростанням таблицю по полю Vozrast, потрібно привласнити властивості IndexFieldNames значення 'Vozrast'. Дуже часто індексація потрібна тоді, коли користувач натискає на заголовках стовпців компонента DBGrid.
procedure TForm1.DBGrid1TitleClick(Column: TColumn); begin ClientDataSet1.IndexFieldNames:=Column.FieldName; end;
Також можна створити індекси за допомогою IndexDefs. Індекси можна створити як під час виконання, так і на стадії створення бази даних. Під час виконання Delphi -додатки, щоб створити індекс потрібно викликати метод Add властивості IndexDefs. Перший параметр - це ім'я індексу, другий - ім'я поля (або полів), третій -опції. Тепер для того, щоб упорядкувати таблицю по полю, потрібно присвоїти властивості IndexName ім'я потрібного індексу. Цей метод краще, ніж попередній, оскільки можна швидко перемикатися між створеними заздалегідь індексами. Для того, щоб змінити індекси, потрібно скористатися властивістю Items властивості IndexDefs, вказавши порядковий номер індексу. Отримати порядковий номер індексу можна за допомогою методу властивості IndexDefs IndexOf , вказавши ім'я індексу. Наприклад: