Додати стовпець до SQL Server


101

Мені потрібно додати стовпчик до моєї SQL Serverтаблиці. Чи можна це зробити, не втрачаючи даних, у мене вже є?

Відповіді:


158

Звичайно! Просто використовуйте ALTER TABLE...синтаксис.

Приклад

ALTER TABLE YourTable
  ADD Foo INT NULL /*Adds a new int column existing rows will be 
                     given a NULL value for the new column*/

Або

ALTER TABLE YourTable
  ADD Bar INT NOT NULL DEFAULT(0) /*Adds a new int column existing rows will
                                    be given the value zero*/

У SQL Server 2008 перший - це лише зміна метаданих. Другий буде оновлювати всі рядки.

У випуску SQL Server 2012+ Enterprise, другий також є лише зміною метаданих .


17

Скористайтеся цим запитом:

ALTER TABLE tablename ADD columname DATATYPE(size);

І ось приклад:

ALTER TABLE Customer ADD LastName VARCHAR(50);

1
Якщо ви розміщуєте код, XML або зразки даних, будь-ласка, виділіть ці рядки в текстовому редакторі та натисніть кнопку «зразки коду» ( { }) на панелі інструментів редактора, щоб гарненько відформатувати та виділити синтаксис!
marc_s

3

Додавання стовпця за допомогою SSMS або ALTER TABLE .. ADDне видалить наявних даних.


2

Додати новий стовпець до таблиці

ALTER TABLE [table]
ADD Column1 Datatype

Напр

ALTER TABLE [test]
ADD ID Int

Якщо Користувач хоче зробити його автоматичним збільшенням, то

ALTER TABLE [test]
ADD ID Int IDENTITY(1,1) NOT NULL

-1

Додайте новий стовпець до таблиці із значенням за замовчуванням.

ALTER TABLE NAME_OF_TABLE
ADD COLUMN_NAME datatype
DEFAULT DEFAULT_VALUE

Ваша відповідь буде набагато кращою, якби ви додали коротке пояснення того, що тут відбувається.
Bonifacio2
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.