A computer-implemented method for extending a data definition language, DDL, to introduce a new column type which is referred to as a rule type column in a table of a database, the method comprising: providing a database comprising data organized in rows and columns; receiving a DDL statement for creating a table in the database, the table comprising the rule type column, wherein the DDL statement reflects the logic of a business rule; creating the rule type column in the table of the database in accordance with the DDL statement to define whether the rule type column is transient or non-transient and whether the rule type column is generic or non-generic; deriving, during a query or an insert or update operation, a value from the table of the database for the rule type column; and displaying the derived value for the rule type column; wherein: when the rule type column is transient, the value for the rule type column is derived only during a query execution and is not persisted in the table of the database; when the rule type column is non-transient, the value for the rule type column is derived during an insert or update operation and is persisted in the table of the database; when the rule type column is generic, the business rule is not defined during creation of the table including the rule type column but specified during an insert or update operation; and when the rule type column is non-generic, the business rule is defined during creation of the table including the rule type column and the same for all the rows. providing a database comprising data organized in rows and columns; receiving a DDL statement for creating a table in the database, the table comprising the rule type column, wherein the DDL statement reflects the logic of a business rule; creating the rule type column in the table of the database in accordance with the DDL statement to define whether the rule type column is transient or non-transient and whether the rule type column is generic or non-generic; deriving, during a query or an insert or update operation, a value from the table of the database for the rule type column; and displaying the derived value for the rule type column; wherein: when the rule type column is transient, the value for the rule type column is derived only during a query execution and is not persisted in the table of the database; when the rule type column is non-transient, the value for the rule type column is derived during an insert or update operation and is persisted in the table of the database; when the rule type column is generic, the business rule is not defined during creation of the table including the rule type column but specified during an insert or update operation; and when the rule type column is non-generic, the business rule is defined during creation of the table including the rule type column and the same for all the rows. when the rule type column is transient, the value for the rule type column is derived only during a query execution and is not persisted in the table of the database; when the rule type column is non-transient, the value for the rule type column is derived during an insert or update operation and is persisted in the table of the database; when the rule type column is generic, the business rule is not defined during creation of the table including the rule type column but specified during an insert or update operation; and when the rule type column is non-generic, the business rule is defined during creation of the table including the rule type column and the same for all the rows.