Custom database tables
Describes options for managing custom database tables when using Optimizely Digital Experience Platform (DXP).
You may apply custom database tables when you need to handle data that does not conform with the provided Optimizely table structure.
When you create an Optimizely Content Management System (CMS) site from the Optimizely Visual Studio integration, it automatically creates the database using the Optimizely schema. Each version of the database schema targets a specific version of the product. Optimizely CMS supports several SQL Server high-availability options for the database's availability and performance, including fail-over clustering and database mirroring.
When upgrading, never directly access the tables or stored procedures in the database or create custom tables that interfere with the tables created by Optimizely. Instead, use the documented API to avoid backward compatibility issues on the database level.
Manage custom tables
If you need to use custom database tables for your implementation in Digital Experience Platform (DXP), you have the following options:
- Use an initialization module. The initialization module should take a dependency to
EPiServer.Web.InitializationModule
, so the Optimizely automatic schema updates can run. In the module, you can use migration tools such as Fluent Migrator (GitHub) to alter database schemas. - Use Entity Framework Code First Migrations (MSDN) to migrate databases.
Note
You can access custom tables only using the standard connection string (that is,
EPiServerDB
). If you need custom metadata for entity framework, consider using the connection builder referencing the standard connection string.Adding Custom Application Settings and/or Custom Connection Strings is supported only through client code. Optimizely DXP does not support custom settings within the Azure Portal.
Related topics
Updated 8 months ago