Salesforce

Can the data type of an existing database field be changed ?

« Go Back

Information

 
TitleCan the data type of an existing database field be changed ?
URL Name000039722
Article Number000161835
EnvironmentProduct: Progress OpenEdge
Version: All supported versions
OS: All supported platforms
Question/Problem Description
Can the data type of an existing database field be changed ?
Is it possible to change an integer database field to decimal ?
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution
Once a database field is created and assigned a data type it s not possible to change that data type.

The tools that maintains the schema is the Data Dictionary, it does not allow the data type of a field to be changed.
The only exception came with the introduction of 64 bit integers since OpenEdge 10.1B, where in the case of an integer field there is a provision to change an integer field datatype to and only to int64.

Changing the data type of a field could results in data loss, for example:
  • Converting an integer to a decimal would result in no loss. 
  • Converting a decimal field to an integer will result in loss of precision as the decimal portion of the data would be rounded.
  • Converting an integer to INT64 would result in no data loss, it is not necessary to dump and load the data. However, to revert the datatype change, a dump and load is necessary. For further information refer to Article  Progress INTEGER and INT64 data types  
Other than the above INT -> INT64 exception, the only way to change the data-type of a field is to delete the field and insert it again with the required data as any existing data will be lost when the field is deleted. The following Article provides an example of how this can be achieved:
Workaround
Notes
Keyword Phrase
Last Modified Date11/20/2020 7:14 AM

Powered by