sql >> Databáze >  >> RDS >> Sqlserver

Jak odebrat sloupec v SQL Server pomocí T-SQL

Na serveru SQL Server můžete vytvářet, upravovat a odstraňovat databázové objekty pomocí grafického uživatelského rozhraní (například pomocí nástrojů GUI v SQL Server Management Studio), nebo můžete k provádění stejných úloh použít Transact-SQL. Ve skutečnosti nástroje grafického uživatelského rozhraní k provádění těchto úkolů ve skutečnosti používají T-SQL v zákulisí.

Při použití Transact-SQL můžete odstranit sloupec z tabulky pomocí ALTER TABLE prohlášení. Tento příkaz vám umožňuje změnit definici tabulky tím, že přesně zadáte, jaké změny požadujete. V našem případě požadujeme odstranění sloupce.

Příklad

ALTER TABLE Tasks
    DROP COLUMN TaskCode;
GO

Tento příklad odstraní/(zahodí) sloupec s názvem TaskCode z tabulky nazvané Tasks . To je vše, co musíme udělat, abychom sloupec odstranili.

V tomto případě také používáme GO . Toto ve skutečnosti není součástí T-SQL, ale některé nástroje to uznávají jako znamení konce dávky příkazů T-SQL.

Chyba omezení?

V některých případech se může při pokusu o odstranění sloupce z tabulky zobrazit chyba omezení. Pokud k tomu dojde, je to proto, že sloupec, který se pokoušíte odstranit, má omezení, které je třeba odstranit jako první.

V tomto případě jednoduše nejprve zrušte omezení a poté sloupec.

Zde je příklad zrušení omezení a následného zrušení tabulky:

-- Drop the constraint
ALTER TABLE Tasks
    DROP CONSTRAINT taskcode_unique;
GO

-- Drop the column
ALTER TABLE Tasks
    DROP COLUMN TaskCode;
GO

Tento příklad zruší omezení zvané taskcode_unique , pak vypustí sloupec s názvem TaskCode .


  1. Existuje oficiální doporučení společnosti Oracle ohledně použití explicitních spojení ANSI JOIN vs implicitních spojení?

  2. Jak vytvořit index na poli JSON v Postgresu?

  3. Jak vrátit všechna zakázaná omezení cizích klíčů v SQL Server (příklad T-SQL)

  4. Předat parametry WHERE do zobrazení PostgreSQL?