Table Editor

Overview

The Table Editor is an integrated Developer tool used for managing database tables directly within the Servoy environment. It provides a graphical interface to define and modify table structures, fields, and relationships in the database.

Table Editor can be opened from several places like: View Foundset Data Source, In Memory Datasources, Tables, Views, Columns,Agregations, tables from Resource Locator, Calculations.

Also it can be directly open from the database manager. First, make sure you're connected to your database. Double click on any table, or choose Edit/View from context menu, is opening the table editor.

Table editor is organized in tabs, each tab providing a specific set of operations.

Sections

Columns

For a detailed guide on managing the database columns within Servoy Developer, refer to the Columns section of the documentation. This comprehensive section includes instructions on adding, dropping, and managing properties of columns in the database tables, along with hints and important notes on each operation.

Calculations

For a comprehensive overview of handling Calculations within tables in Servoy Developer, refer to the Calculations section in the documentation. This section details the dynamic computation of Calculations, which, unlike stored values in Columns, are evaluated in real-time based on the input changes

Methods

For insights into implementing methods within the data model in Servoy Developer, refer to the Methods section in the documentation. This section outlines the process of adding methods directly to entities in the database layer, facilitating the integration of complex validation and business logic. It offers detailed guidance on navigating the methods tab, adding new methods, and accessing the scripting environment for the entity. Additionally, it discusses executing these methods in various contexts within Servoy Developer, illustrating how methods are integrated seamlessly across different components and scenarios.

Aggregations

For detailed instructions on how to utilize Aggregations within Servoy Developer, consult the Aggregations section in the documentation. This section explains how Aggregations serve as dynamic data providers by performing SQL aggregate functions over a set of records within a Table. Additionally, it discusses the various types of aggregations available such as Count, Maximum, Minimum, Average, and Sum, and outlines their implementation and scope considerations, particularly how they interact with SQL queries and the impact on performance.

Events / Triggers

For comprehensive instructions on how to handle Events and Triggers within Servoy Developer, consult the Events/Triggers section in the documentation. This section outlines how Servoy's data layer event model enables the implementation of validation and execution of business logic just before and after data changes are committed to the database. It provides guidance on managing these events within the Table Editor, including how to attach and remove event handlers. The section also explains the practical applications of using on-event and after-event triggers, such as validating data integrity before database operations and leveraging post-operation data for further processing.

Table security

For detailed instructions on managing user permissions within Servoy Developer, please see the Managing User Permissions section in the documentation. This section explains how to use the Security Editor to define and adjust access rights for different user roles, ensuring proper control over activities such as reading, inserting, updating, and deleting records within the database. It provides a step-by-step guide on configuring and applying permission settings, as well as tips on maintaining data integrity and security through regular updates to permission configurations.

Table properties

This section enables the identification of a table as a metadata table.

A metadata table is used to store information about the data or the structure of the database itself. Metadata tables are crucial for managing, securing, and auditing database records effectively. In Servoy Developer, a metadata table consists of at least three mandatory fields:

  1. id: A column with a UUID (Universally Unique Identifier) data type, which serves as the primary key (PK) for the table. The length is specified as 36 characters and it does not allow null values. The UUID is auto-generated by the database ("db identity"), which ensures each entry has a unique identifier.

  2. modification_date: A column of type DATETIME, used to record the date and time when a record in the table was last modified. This column allows null values, which may indicate that not all records have been modified since their creation.

  3. deletion_date: Another DATETIME column, intended to store the date and time when a record was marked for deletion. This column also allows null values, useful for records that have not been deleted.

Please refer to the Tables section for details on how to create tables.

Here is a brief explanation of the settings available into Properties page:

  1. Hidden in Developer: When this option is checked, the table is hidden from view within the solution development environment. This setting is typically used to prevent accidental modification or usage of system tables that are critical for the application's underlying functionality but not meant to be directly manipulated by the developer.

  2. Metadata Table: This checkbox is enabled only if the table has a primary key of the UUID type. Marking this checkbox classifies the table as a metadata table, which is used for managing data about the structure of the database or its data content.

  3. add metadata date columns: This button becomes active if the essential date-related columns for a typical metadata table (such as modification and deletion date columns) are missing. Clicking this button will automatically add the missing columns to the table, ensuring it conforms to the expected structure of a metadata table with fields to track changes over time.

Data

Provides a view of the content of the table currently open in the editor.

Last updated