Thêm cột vào SQL Server


101

Tôi cần thêm một cột vào SQL Serverbảng của mình . Có thể làm như vậy mà không mất dữ liệu, tôi đã có?

Câu trả lời:


158

Tất nhiên! Chỉ cần sử dụng ALTER TABLE...cú pháp.

Thí dụ

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

Hoặc là

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

Trong SQL Server 2008, thay đổi đầu tiên chỉ là siêu dữ liệu. Thứ hai sẽ cập nhật tất cả các hàng.

Trong phiên bản SQL Server 2012+ Enterprise, phiên bản thứ hai cũng chỉ là thay đổi siêu dữ liệu .


17

Sử dụng truy vấn này:

ALTER TABLE tablename ADD columname DATATYPE(size);

Và đây là một ví dụ:

ALTER TABLE Customer ADD LastName VARCHAR(50);

1
Nếu bạn đăng các mẫu mã, XML hoặc dữ liệu, vui lòng đánh dấu các dòng đó trong trình soạn thảo văn bản và nhấp vào nút "mẫu mã" ( { }) trên thanh công cụ của trình soạn thảo để định dạng độc đáo và đánh dấu cú pháp!
marc_s

3

Thêm một cột bằng SSMS hoặc ALTER TABLE .. ADDsẽ không làm mất bất kỳ dữ liệu hiện có nào.


2

Thêm cột mới vào Bảng

ALTER TABLE [table]
ADD Column1 Datatype

Ví dụ

ALTER TABLE [test]
ADD ID Int

Nếu Người dùng muốn làm cho nó tự động tăng lên thì

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

-1

Thêm cột mới vào Bảng với giá trị mặc định.

ALTER TABLE NAME_OF_TABLE
ADD COLUMN_NAME datatype
DEFAULT DEFAULT_VALUE

Câu trả lời của bạn sẽ tốt hơn nếu bạn thêm một lời giải thích ngắn gọn về những gì đang xảy ra ở đây.
Bonifacio2
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.