sql >> Databáze >  >> RDS >> Mysql

Přidejte nový sloupec do všech mysql tabulek

Ne, opravdu neexistuje způsob, jak přidat pole do více tabulek najednou. K tomu budete muset napsat skript. Nemělo by to být těžké napsat skript:

Jednoduché SHOW TABLES dotaz vám poskytne seznam tabulek, které pak můžete procházet v PHP.

Ve smyčce SHOW COLUMNS FROM tablename dotaz vám poskytne pole v aktuální tabulce, která můžete použít ke kontrole, zda již má practiceId pole a v případě potřeby jej přidejte.

Chcete-li přidat pole, použijte ALTER TABLE tablename ADD COLUMN practiceId INT (Předpokládám INT , ale nahraďte výrazem, ale pokud používáte jiný datový typ, pole musí být definováno)

Chcete-li přidat index do nového sloupce, můžete také použít ALTER TABLE nebo použijte CREATE INDEX . Chcete-li vytvořit omezení cizího klíče, použijte ALTER TABLE pomocí ADD FOREIGN KEY argument (Ale věřím, že to funguje pouze s tabulkami InnoDB).

Reference:




  1. Vraťte řádky, které mají v Postgresql maximálně jeden sloupec

  2. Získávání dat z MYSQL do JSON pomocí PHP

  3. Jak přesunu soubor zip do sloupce blob v Javě?

  4. Co znamená ON [PRIMARY]?