La mise à jour postgresql définit uniquement là où la distribution est possible et ignorez l'erreur?

dba.stackexchange https://dba.stackexchange.com/questions/24673

  •  30-10-2019
  •  | 
  •  

Question

J'ai 2 colonnes dans une table PostgreSQL. La mac_address_temp La colonne est destinée à la migration du type de caractères vers le type d'adresse mac:

mac_address      | macaddr               |
mac_address_temp | character varying(17) |

Je souhaite migrer les données de Mac_Address_Temp vers Mac_Address, mais il y a des données qui ne peuvent pas être jetées comme macaddr taper.

mac_address | mac_address_temp
-------------+------------------
            | AAB5:4f27:e299
            | AAB54f27e299

UPDATE mactable SET mac_address = CAST(mac_address_temp as macaddr);
ERROR:  invalid input syntax for type macaddr: "AAB5:4f27:e299"

Y a-t-il un moyen d'ignorer où CAST Ne fonctionne pas et ne met pas encore à jour le reste de la table?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top