How can i delete database fields ?

Hello guys,

After deleted fields on service studio, when i publish my DataBase eSpace, its show this alerts:

(i have +- 500 fields to delete)


I try delete this fields on DBCleaner, but thjis fields not exist to delete there.

How can i delete this fields that not exist in service studio, but exist in SQL Server MetaData ?

Regards.


I think you did the right steps, using DBCleaner to delete those attributes.

Did you complete scroll down the entities screen to see the deleted attributes, and nothing was there to delete?

Hi Daniel,

Only these fields are displayed in DBCleaner:

the image that i posted before is one part those fields.

Thank you Leando,

But, happened the same case, is displayed only those fields:


Hi Agno,

Here is some suggestions:

https://success.outsystems.com/Documentation/11/Reference/Errors_and_Warnings/Warnings/Database_Integrity_Suggestion_Warning


Message
Inconsistent database table and entity definitions: Column <table>.<column> exists in database, but there is no corresponding attribute in entity '<entity>'
Cause
The entity definition, in your module, does not include the attribute associated with <column>. You deleted this attribute from entity, but OutSystems kept the corresponding column in the table. This inconsistency only occurs if the module has been published with the previous entity definition.
Recommendation

Do one of the following:

  • Drop column from the table, in the database, and publish the module again;
  • Add a new attribute to entity with the same name as column;
  • Ignore the warning.


If you try this, you will loose all data in that Entity.

When you remove the attributes, Outsystems keeps the columns [only hides] in the table that belongs to the Entity.

If the Entity exists in only one environment you can do the following, [ Else, you don't ]:

  • Remove the fields you don't want
  • Go to that Entity and cut
  • Publish
  • Paste the same Entity
  • Publish

There will be two tables, the active with the fields you want.

And you can delete the old table with DBCleaner