How to convert an existing field from Text to Link in Drupal 7 If I have a field in Drupal which of type Text, how do I convert it to to allow a link if the field is already being used on the site without losing data?
Install the Link module in order to allow link fields.
In your database, run:

UPDATE field_config set type='link_field', module='link' WHERE field_name='YOUR_FIELD_ID'
Then run the following query:

UPDATE field_config_instance SET data='a:7:{s:5:"label";s:LENGTH_OF_YOUR_FIELD_NAME:"YOUR_FIELD_NAME";s:6:"widget";a:5:{s:6:"weight";s:1:"9";s:4:"type";s:10:"link_field";s:6:"module";s:4:"link";s:6:"active";i:0;s:8:"settings";a:0:{}}s:8:"settings";a:10:{s:12:"validate_url";i:1;s:3:"url";i:0;s:5:"title";s:8:"optional";s:11:"title_value";s:0:"";s:15:"title_maxlength";s:3:"128";s:13:"enable_tokens";i:1;s:7:"display";a:1:{s:10:"url_cutoff";s:2:"80";}s:10:"attributes";a:5:{s:6:"target";s:6:"_blank";s:3:"rel";s:0:"";s:5:"class";s:0:"";s:18:"configurable_title";i:0;s:5:"title";s:0:"";}s:10:"rel_remove";s:7:"default";s:18:"user_register_form";b:0;}s:7:"display";a:1:{s:7:"default";a:5:{s:5:"label";s:5:"above";s:4:"type";s:12:"link_default";s:8:"settings";a:0:{}s:6:"module";s:4:"link";s:6:"weight";i:16;}}s:8:"required";i:0;s:11:"description";s:0:"";s:13:"default_value";N;}' WHERE field_name='YOUR_FIELD_ID'
(optional) Go into the table for your field name (field_data_field_YOUR_FIELD_NAME) and remove the column field_YOUR_FIELD_NAME_format
In the same table as #4 above, change the column field_YOUR_FIELD_NAME_value to field_YOUR_FIELD_NAME_title. This will make the previous values for these text fields now become the title of any links placed in the new Link field.
In the same table as #4 above, add the columns field_YOUR_FIELD_NAME_url VARCHAR(2048) ALLOW NULL, and field_YOUR_FIELD_NAME_attributes MEDIUMTEXT ALLOW NULL


This solution worked well for me.