Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да добавите нова колона към съществуваща таблица в SQL Server (T-SQL)

Когато създавате таблица в SQL Server с помощта на T-SQL, вие посочвате всички колони за тази таблица, заедно с техните типове данни, всякакви ограничения и т.н.

Но какво ще стане, ако един ден решите да добавите нова колона към тази таблица? Как да добавите новата колона към съществуващата таблица, без да създавате таблицата отново? В края на краищата, пускането на таблицата и започването наново обикновено не е опция, тъй като таблицата вече ще съдържа данни и вероятно не искате да се налага да архивирате всички тези данни и да ги вмъквате отново, след като изпуснете и създадете таблицата.

Отговорът е:ALTER TABLE изявление.

Изявлението ALTER TABLE

ALTER TABLE операторът ви позволява да модифицирате съществуваща таблица, без да объркате съществуващата й дефиниция и каквито и да било данни, които може да се намират в нея.

Можете да добавите нова колона към съществуваща таблица по следния начин:

Ето един пример:

ALTER TABLE Tasks
    ADD TaskDescription varchar(255) NULL;
GO

В този пример добавяме нова колона, наречена TaskDescription към Tasks маса. Нашата нова колона има тип данни varchar(255) и може да съдържа нулеви стойности.

Ние също така използваме GO в този случай, което всъщност не е команда на Transact-SQL, но се разпознава от sqlcmd и osql помощни програми и редактор на код на SQL Server Management Studio и сигнализира за края на партида Transact-SQL изрази.

Проверете резултатите

Можете да проверите резултатите, като изпълните заявка, която връща всички колони за дадената таблица. Като това:

USE Solutions;
SELECT * 
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Tasks';

Това изброява подробностите за всички колони в Tasks маса. Преминавам към правилната база данни (в този случай Solutions база данни). Разбира се, ще трябва да промените името на базата данни и таблицата според изискванията.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Групово ИЗТРИВАНЕ на SQL Server 2008 (Има ли нещо като групово копие (bcp) за изтриване на данни?)

  2. Съхранение на файлове в SQL Server

  3. Трябва да предам имена на колони, използвайки променлива в оператора за избор в процедурата на магазин, но не мога да използвам динамична заявка

  4. Как да получите последния ден от миналата седмица в sql?

  5. MVC4:UserIsInRole - Не може да се свърже с база данни на SQL Server