Add new function to create or alter table if needed

In case we call the createOrAlterTable function, we will:
 - create the table if it does not exist
 - add columns to the table if its missing

=> We will need to add a check in case a 'NOT NULL' is provided.
   In this case, a 'DEFAULT' value should be mandatory

* createOrAlterTable(string tableName, object columns)

* addColumns(string tableName, object newColumns)