Overview
The Custom tables module allows users to create their own tables in the system database and manage data in them via Kentico CMS user interface, without the need to use Microsoft SQL Server Management Studio or any other database management tool. This may come in handy in many scenarios, typically when you need to store a large number of structured data items, for which standard Kentico CMS documents are not efficient. Another typical scenario may be development of your custom modules, as you can store module data in custom tables and access them conveniently from your code using the provided API.
User interface of the module can be found at two locations, while each of them is intended for different purposes. Custom tables themselves can be created and managed in Site Manager -> Development -> Custom tables. This section is intentionally located in Site Manager, so that only global administrators can create the tables. Developer's Guide -> Modules -> Custom tables -> Creating custom tables topic describes creation of custom tables by means of the New custom table wizard, which is accessible from this part of the user interface. Once a custom table is created, its configuration (not the actual data stored in it) can be managed in the same section of the user interface, as described in the Managing custom tables topic in the same chapter of the Developer's Guide.
The other user interface related to this module can be found in CMS Desk -> Tools -> Custom tables. This is where new data records can be inserted into the tables and where existing data records can be viewed, modified or deleted. It is located in CMS Desk, so that manipulation with data in custom tables is available to content editors with appropriate permissions, as described in the Security topic. Management of the actual data items is described in Managing data in custom tables.
The module comes with three web parts that can display data from custom tables on the live site. They are described in the Available web parts topic. Use of transformations is essential with these web parts, so we have prepared the Transformations for custom tables topic. There, you can find information on how to modify the default transformations in order to change the way the data items are displayed.
Finally, the module comes with an API, which enables you to handle custom table data in your custom code. Code examples, along with a list of database tables and API classes related to the module, can be found in the Custom tables internals and API sub-chapter.
The Custom tables module interacts with two other Kentico CMS modules. Data stored in the tables can be searched using the Smart search module. You can also create Alternative forms for the tables. These forms can be used instead of the default forms for creating or editing a custom table in the administration interface, as described in Developer's Guide -> Modules -> Alternative forms -> Automatically used alternative forms.