Bảng ALTER thêm cột vào vị trí cụ thể trong truy vấn SQL Server

Câu trả lời cho câu hỏi của bạn, Nazri, là Enterprise Manager (2000) và SQL Server Management Studio (2005) thực sự tiếp tục và tạo các bảng tạm thời với thứ tự cột mong muốn (bảng mà bạn có thể sắp xếp lại một cách trực quan từ bên trong studio) và sau đó . Nó không gợi cảm lắm, nhưng đó là cách nó được thực hiện

Đây là giao diện của truy vấn của bạn bằng cách sử dụng tên cột mà bạn đã cung cấp làm ví dụ

TẠO BẢNG dbo. TEMP_myTable (id, Tên, địa chỉ, điện thoại) BẬT [CHÍNH]

ĐI

NẾU TỒN TẠI (CHỌN * TỪ sys. đối tượng WHERE object_id = OBJECT_ID(N'[dbo]. [myTable]') AND gõ IN (N'U'))

THẢ BẢNG [dbo]. [bảng của tôi]

ĐI

THỰC HIỆN sp_rename N'dbo. TEMP_myTable', N'myTable','ĐỐI TƯỢNG'

ĐI

---------------

Chỉ cần thay đổi bất kỳ trường hợp nào của "myTable" ở trên bằng tên thật của bảng của bạn và bạn sẽ ổn. Tất nhiên, bạn sẽ không muốn quên thêm các ràng buộc cột (int, varchar, khóa chính, v.v. ) sau mỗi tên cột

Chẳng hạn, các bảng của chúng ta luôn có các cột CreatedDate, CreatedBy, LastModifiedDate, LastModifiedBy ở "cuối" của mỗi định nghĩa bảng?

Lượt xem. 16257
Tổng số người đã trả lời. 2
Tổng số đánh dấu là câu trả lời. 1
Đã đăng trên. 11-Jun-2017 21. 50

Để thêm các cột tại một vị trí cụ thể trong bảng hiện có, hãy sử dụng lệnh after. Cú pháp như sau -

ALTER TABLE yourTableName
ADD COLUMN yourColumnName data type AFTER yourExistingColumnName;

Để hiểu cú pháp trên, trước tiên chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau

mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
Query OK, 0 rows affected (0.53 sec)

Bây giờ bạn có thể kiểm tra mô tả của bảng hiện có bằng lệnh desc. Cú pháp như sau -

desc yourTableName;

Sau đây là truy vấn để kiểm tra mô tả

mysql> desc changeColumnPosition;

Sau đây là đầu ra

+-------------------+--------------+------+-----+---------+-------+
| Field             | Type         | Null | Key | Default | Extra |
+-------------------+--------------+------+-----+---------+-------+
| Id_Position1      | int(11)      | YES  |     | NULL    |       |
| Name_Position2    | varchar(100) | YES  |     | NULL    |       |
| Address_Position4 | varchar(200) | YES  |     | NULL    |       |
+-------------------+--------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

Tôi có ba cột và tôi muốn thêm một cột khác sau Trường Tên_Vị trí2. Truy vấn như sau

mysql> alter table changeColumnPosition
-> add Age_Position3 int after Name_Position2;
Query OK, 0 rows affected (1.34 sec)
Records: 0 Duplicates: 0 Warnings: 0

Chúng ta đã thêm thành công cột Age_Position3 sau Name_Position2. Kiểm tra lại bảng hiện có để biết những thay đổi chúng tôi đã thực hiện ở trên

Không có lệnh ALTER hoặc truy vấn SQL để thêm một cột sau một cột hoặc vị trí cụ thể trong SQL Server. Bạn có thể làm điều này với sự trợ giúp của SQL Server Management Studio

Thực hiện theo các bước sau để thêm một cột mới tại một vị trí cụ thể

  1. Mở STUDIO QUẢN LÝ MÁY CHỦ SQL

2. Kết nối Database và vào TOOLS –> Chọn Options

Bảng ALTER thêm cột vào vị trí cụ thể trong truy vấn SQL Server

3. Trên Bảng điều khiển bên trái, Mở rộng THIẾT KẾ và chọn TABLE AND DATABASE DESIGNERS. Bây giờ trên Bảng điều khiển bên phải, bỏ chọn tùy chọn PREVENT SAVING CHANGES THAT REQUIRE TABLE RE-CREATION và nhấn OK

Bảng ALTER thêm cột vào vị trí cụ thể trong truy vấn SQL Server

4. Chuyển đến trình khám phá đối tượng và chọn bảng mà chúng ta cần thêm một cột mới tại một vị trí cụ thể

Tóm lược. trong hướng dẫn này, bạn sẽ học cách sử dụng câu lệnh

mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
Query OK, 0 rows affected (0.53 sec)
7 của SQL Server để thêm một hoặc nhiều cột vào bảng

Câu lệnh

mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
Query OK, 0 rows affected (0.53 sec)
7 sau đây nối thêm một cột mới vào bảng

ALTER TABLE table_name ADD column_name data_type column_constraint;

Code language: SQL (Structured Query Language) (sql)

trong tuyên bố này

  • Đầu tiên, chỉ định tên của bảng mà bạn muốn thêm cột mới vào
  • Thứ hai, chỉ định tên của cột, kiểu dữ liệu của cột và ràng buộc nếu có

Nếu bạn muốn thêm nhiều cột vào một bảng cùng một lúc bằng một câu lệnh

mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
Query OK, 0 rows affected (0.53 sec)
9, bạn sử dụng cú pháp sau

ALTER TABLE table_name ADD column_name_1 data_type_1 column_constraint_1, column_name_2 data_type_2 column_constraint_2, ..., column_name_n data_type_n column_constraint_n;

Code language: SQL (Structured Query Language) (sql)

Trong cú pháp này, bạn chỉ định một danh sách các cột được phân tách bằng dấu phẩy mà bạn muốn thêm vào bảng sau mệnh đề

desc yourTableName;
0

Lưu ý rằng SQL Server không hỗ trợ cú pháp thêm cột vào bảng sau cột hiện có như MySQL

SQL Server mysql> create table changeColumnPosition -> ( -> Id_Position1 int, -> Name_Position2 varchar(100), -> Address_Position4 varchar(200) -> ); Query OK, 0 rows affected (0.53 sec)7 cột ví dụ

Câu lệnh sau tạo một bảng mới tên là

ALTER TABLE table_name ADD column_name_1 data_type_1 column_constraint_1, column_name_2 data_type_2 column_constraint_2, ..., column_name_n data_type_n column_constraint_n;

Code language: SQL (Structured Query Language) (sql)
0

CREATE TABLE sales.quotations ( quotation_no INT IDENTITY PRIMARY KEY, valid_from DATE NOT NULL, valid_to DATE NOT NULL );

Code language: SQL (Structured Query Language) (sql)

Để thêm một cột mới có tên là

ALTER TABLE table_name ADD column_name_1 data_type_1 column_constraint_1, column_name_2 data_type_2 column_constraint_2, ..., column_name_n data_type_n column_constraint_n;

Code language: SQL (Structured Query Language) (sql)
1 vào bảng

ALTER TABLE table_name ADD column_name_1 data_type_1 column_constraint_1, column_name_2 data_type_2 column_constraint_2, ..., column_name_n data_type_n column_constraint_n;

Code language: SQL (Structured Query Language) (sql)
0, bạn sử dụng câu lệnh sau

mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
Query OK, 0 rows affected (0.53 sec)
2

Câu lệnh sau thêm hai cột mới tên là

ALTER TABLE table_name ADD column_name_1 data_type_1 column_constraint_1, column_name_2 data_type_2 column_constraint_2, ..., column_name_n data_type_n column_constraint_n;

Code language: SQL (Structured Query Language) (sql)
3 và

ALTER TABLE table_name ADD column_name_1 data_type_1 column_constraint_1, column_name_2 data_type_2 column_constraint_2, ..., column_name_n data_type_n column_constraint_n;

Code language: SQL (Structured Query Language) (sql)
4 vào bảng

ALTER TABLE table_name ADD column_name_1 data_type_1 column_constraint_1, column_name_2 data_type_2 column_constraint_2, ..., column_name_n data_type_n column_constraint_n;

Code language: SQL (Structured Query Language) (sql)
0

mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
Query OK, 0 rows affected (0.53 sec)
6

Trong hướng dẫn này, bạn đã học cách sử dụng câu lệnh

mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
Query OK, 0 rows affected (0.53 sec)
7 của SQL Server để thêm một hoặc nhiều cột vào bảng

Làm cách nào để thêm một cột vào bảng tại một vị trí cụ thể trong SQL Server?

Để thêm một cột tại một vị trí cụ thể trong một hàng của bảng, sử dụng FIRST hoặc AFTER col_name . Mặc định là thêm cột cuối cùng. Bạn cũng có thể sử dụng FIRST và AFTER trong các thao tác THAY ĐỔI hoặc SỬA ĐỔI để sắp xếp lại các cột trong một bảng.

Chúng tôi có thể chỉ định vị trí mà cột mới phải được thêm vào không?

Trả lời. Có, bạn có thể thêm một cột mới ở vị trí đã chỉ định vào khung dữ liệu, bằng cách chỉ định một chỉ mục và sử dụng hàm insert() . Theo mặc định, việc thêm một cột sẽ luôn thêm nó làm cột cuối cùng của khung dữ liệu. Thao tác này sẽ chèn cột vào chỉ mục 2 và điền dữ liệu do dữ liệu cung cấp vào cột đó.