# Data model changes and their impact levels

Availability-note[Deprecated](https://help.talend.com/r/en-US/Cloud/labels-on-talend-help-center/availability-deprecated)

This content is deprecated.

Available in...

* Data Fabric
* MDM Platform
* Qlik Talend Cloud Enterprise Edition
* Qlik Talend Cloud Premium Edition

The data model changes are classified into three levels according to their impacts on the data model: Low, Medium and High.

When you made changes to a data model, the database schema will be updated accordingly.

The following table lists some examples of the data model changes, their corresponding impact level, and the results in the database:

| Action | Impact level | Result |
| --- | --- | --- |
| Add a new mandatory element without a default value | High | The entity table is dropped and recreated with the new column<br>added. |
| Add or remove anonymous types | High | All entity types using anonymous types may be dropped and<br>recreated. |
| Change an optional simple type element to a mandatory one without a<br>default value (null values exist for the given element) | High | The entity table is dropped and recreated. |
| Change an optional complex type element to a mandatory one | High | The entity table is dropped and recreated. |
| Change the type of an element from one simple type to another | High | Not applicable |
| Change the maximum occurrence of an element from<br>1 to n or vice<br>versa | High | The entity table is dropped and recreated. |
| Change the value of totalDigits or fractionDigits of a decimal<br>element | High | The entity table is dropped and recreated. |
| Make changes in inheritance | High | All tables involved in the inheritance tree are dropped and<br>recreated. |
| Make high impact changes to an entity that has foreign key<br>relationships | High | The entity table is dropped and recreated, together with the tables of<br>all other entities that have foreign key relationships with this<br>entity. |
| Remove a mandatory or optional simple type element in a complex type<br>element | High | The entity table is dropped and recreated. |
| Remove a mandatory or optional complex type element | High | The entity table is dropped and recreated. |
| Change an optional simple type element to a mandatory one with a default<br>value (null values exist for the given element) | Medium | The column in the entity table will be updated with the default<br>value. |
| Remove a mandatory or optional simple type element immediately under an<br>entity | Medium | The column in the entity table will be removed. |
| Remove a mandatory or optional foreign key element | Medium | The column in the entity table will be removed. |
| Remove an entity | Medium | The entity table will be removed. |
| Rename an optional element | Medium | A column with the old name remains and a new column with a new name is<br>created. |
| Add a new optional simple type element | Low | A new column is added to the entity table. |
| Add a new optional complex type element | Low | A new column is added to the entity table, and a new table is created<br>for the complex type. |
| Add a new element of string, boolean, or numeric type with a default<br>value | Low | A new column is added to the entity table with the default<br>value. |
| Change a mandatory simple or complex type element to an optional<br>one | Low | The column definition in the entity table will be changed<br>accordingly. |
| Change an optional simple type element to a mandatory one (no null<br>values exist for the given element) | Low | The column definition in the entity table will be changed<br>accordingly. |
| Change an optional multi-occurrence element to a mandatory<br>multi-occurrence one or vice versa | Low | The column definition in the entity table will be changed<br>accordingly. |
| Increase the length of a string element for DB2/Oracle<br><br>The original<br>length is less than or equal to the maximum length of the<br>database VARCHAR type, and the updated length is greater than<br>the maximum length. For more information on this maximum length,<br>see the next table. | High | The entity table is dropped and recreated, the<br>type of the element is converted from VARCHAR to CLOB in the<br>database, and the length of the column is increased<br>accordingly. |
| Increase the length of a string element for MS SQL<br>Server/MySQL/PostgreSQL<br><br>The original length is less than or<br>equal to the maximum length of the database VARCHAR type, and<br>the updated length is greater than the maximum length. For more<br>information on this maximum length, see the next table. | Low | The type of the element is converted from<br>VARCHAR to NVARCHAR(MAX)/TEXT/TEXT in the database, and the length<br>of the column is increased accordingly. |
| Increase the length of a string element (except<br>the above two cases) | Low | The length of the column is increased<br>accordingly. |
| Decrease the length of a string element<br><br>The original length is greater<br>than the maximum length of the database VARCHAR type, and the<br>updated length is less than or equal to the maximum length. For<br>more information on this maximum length, see the next table. | High | The entity table is dropped and recreated, the<br>type of the element is converted to VARCHAR in the database, and the<br>length of the column is decreased accordingly. |
| Decrease the length of a string element<br><br>Both the original length and<br>the updated length are less than or equal to the maximum length<br>of the database VARCHAR type. For more information on this<br>maximum length, see the next table. | High | The entity table is dropped and recreated, and<br>the length of the column is decreased accordingly. |
| Decrease the length of a string element (except<br>the above two cases) | Low | The length of the column is decreased<br>accordingly. |

Maximum length of the VARCHAR type for supported databasesMaximum length of the VARCHAR type for supported databases

| Database | Maximum length of the VARCHAR type<br>(bytes) |
| --- | --- |
| H2 | 255 |
| DB2 | 255 |
| MySQL | 255 |
| MS SQL Server | 4000 |
| Oracle | 4000 |
| PostgreSQL | 255 |