sql >> Databáze >  >> RDS >> Oracle

Změna datového typu sloupce, na který odkazují jiné tabulky

Ne, neexistuje jednoduchý způsob, jak to udělat. Za předpokladu, že obě tabulky obsahují data, museli byste

  • Přidat nový VARCHAR2 sloupec do tabulky A
  • Aktualizujte A, aby byl nový sloupec nastaven na hodnotu TO_CHAR( col1A )
  • Přidejte do tabulky B nový sloupec VARCHAR2
  • Aktualizujte B a nastavte sloupec na hodnotu TO_CHAR( col2B )
  • Zrušte stávající omezení cizího klíče
  • Zrušte stávající omezení primárního klíče
  • Vypusťte col1A od A
  • Vypusťte col2B z B
  • Přejmenujte nové sloupce (pokud chcete) v A a B na col1A a col2B
  • Vytvořte nové omezení primárního klíče
  • Vytvořte nové omezení cizího klíče

Je zřejmé, že to bude poměrně nákladná operace.



  1. Převod mezi klauzulí na spojení

  2. Data neuložená pomocí připravených výpisů

  3. Formátovací standardy SQL

  4. C# Mysql kódování UTF8