Cách thay đổi tên cột trong SQL Server: Giải thích cho người mới bắt đầu – cách cập nhật tên cột trong sql

Chúng tôi sử dụng quy trình lưu trữ hệ thống SP_RENAME để thay đổi tên cột trong SQL Server. Thủ tục này cũng có thể được sử dụng để thay đổi các tên đối tượng khác.

Bạn đang xem : cách cập nhật tên cột trong sql

Thời gian đọc:

7

phút

Vậy là bạn cần thay đổi tên cột trong cơ sở dữ liệu của bạn. Có thể bạn đã nhầm tên ngay từ đầu hoặc nhóm của bạn quyết định tên này cần phải thay đổi vì lý do kinh doanh.

Dù bằng cách nào, nó cũng phải thay đổi.

May mắn thay, quá trình thay đổi tên cột không quá khó trong SQL Server. Trong hướng dẫn này, chúng ta sẽ đi qua quy trình và thảo luận về một số công việc bổ sung mà bạn có thể cần làm nếu trên thực tế, bạn cần thay đổi tên cột.

Bạn có cần thay đổi tên cột trong SQL Server không? Tìm hiểu cách thực hiện trong hướng dẫn này!

Chúng ta sẽ nói về các chủ đề sau:

  1. Điều đó

    không thể

    được thực hiện thông qua câu lệnh

    ALTER COLUMN

  2. Quy trình được lưu trữ của hệ thống

    SP_RENAME

  3. Các cách sử dụng khác của

    SP_RENAME

  4. Hậu quả của việc đổi tên cột
  5. Mẹo và liên kết

Hãy bắt đầu.

1. Nó

không thể

được thực hiện thông qua câu lệnh

ALTER COLUMN

Rất nhanh, chúng ta cần nói về câu lệnh ALTER COLUMN. Bạn có thể nghĩ rằng câu lệnh ALTER COLUMN là những gì bạn sẽ sử dụng để thay đổi tên của một cột. Rốt cuộc, trên thực tế, bạn đang thay đổi cột nếu bạn đổi tên nó, phải không?

Sai.

Câu lệnh ALTER COLUMN nhằm sửa đổi những thứ như kiểu dữ liệu của cột (từ INT thành BIGINT chẳng hạn) hoặc vô hiệu (từ NULL thành NOT NULL chẳng hạn).

Vì vậy, nếu bạn đang cố gắng thay đổi tên cột qua ALTER COLUMN, chúng tôi cần thay đổi mô hình của bạn.

2. Quy trình lưu trữ hệ thống

SP_RENAME

Hệ thống SP_RENAME quy trình được lưu trữ là hệ thống chúng tôi sử dụng để thay đổi tên cột. Nó rất dễ sử dụng.

Chỉ có 3 tham số cho quy trình được lưu trữ này:

1. @objname :

Đây là tên của cột mà chúng tôi muốn thay đổi. Khi chúng tôi chỉ định tên cột, chúng tôi cần làm như vậy bằng cách sử dụng mã định danh hai phần. Điều đó có nghĩa là chúng tôi cũng bao gồm tên của bảng. Ví dụ: ‘Sales.EmplID’ . Bảng là Doanh số và cột trong bảng đó (cột chúng tôi muốn thay đổi) là EmplID . Khi chúng tôi chỉ định một giá trị cho thông số này, chúng tôi đặt nó xung quanh các dấu ngoặc kép.

2. @newname :

Tất nhiên, đây là tên mới mà chúng tôi muốn đặt cho cột của mình. Khi chúng tôi chỉ định tên mới, chúng tôi không sử dụng số nhận dạng hai phần. Chúng tôi cũng đặt giá trị xung quanh các dấu ngoặc kép.

3. @objtype :

Tham số cuối cùng là loại đối tượng mà chúng tôi muốn thay đổi. Trong trường hợp của chúng tôi, giá trị cho tham số này sẽ chỉ đơn giản là từ ‘COLUMN’ . Chúng ta sẽ thấy trong phần tiếp theo cách SP_RENAME cũng có thể được sử dụng cho các đối tượng khác, chẳng hạn như chỉ mục hoặc tên cơ sở dữ liệu. Giống như các tham số khác, hãy lưu ý rằng điều này cũng được bao quanh bởi các dấu ngoặc kép.

Một ví dụ về việc sử dụng

SP_RENAME

Được rồi, hãy cùng xem tất cả trong quá trình thực hiện.

Hãy tạo một bảng rất đơn giản có tên là Khách hàng :

 TẠO khách hàng BẢNG
(
CustID INT IDENTITY,
FName VARCHAR (15),
LName VARCHAR (15)
) 

Bây giờ, hãy thêm một số dữ liệu:

 CHÈN VÀO Khách hàng (FName, LName)
GIÁ TRỊ
('Joshua', 'Porter'),
('Andrew', 'Bluefield'),
('Jack', 'Porter') 

Hãy kiểm tra dữ liệu:

thay đổi dữ liệu ban đầu của tên cột

Được rồi, hãy cùng suy nghĩ về cột Danh tiếng của chúng tôi. Có lẽ đó là một cái tên khá nghèo nàn cho một chuyên mục. Khi chúng tôi đặt tên cho các đối tượng trong SQL Server, chúng tôi thực sự nên cố gắng mô tả hết mức có thể. Thông thường, tốt hơn là nên có một cái tên mang tính mô tả hơn là một cái tên ngắn gọn.

Xem cuốn sách của Robert Martin Mã sạch để biết thêm các mẹo hữu ích về viết mã.

Vì vậy, hãy thay đổi tên của cột thành FirstName .

Cuộc gọi sẽ giống như sau:

 THỰC HIỆN SP_RENAME @objname = 'Khách hàng.FName', @newname = 'FirstName', @objtype = 'COLUMN' 

Hãy nhớ các quy tắc về các tham số:

  • Bạn cần sử dụng số nhận dạng hai phần cho thông số @objname .
  • Bạn sử dụng số nhận dạng một phần cho tên mới của cột của chúng tôi.
  • Giá trị @objtype trong trường hợp của chúng tôi chỉ đơn giản là từ

    ‘COLUMN’

    .

  • Tất cả các giá trị tham số được bao bọc trong dấu ngoặc kép.

Vì vậy, hãy cùng xem nó hoạt động:

thay đổi tên cột thực thi SP

Lưu ý cảnh báo mà chúng tôi nhận được. Chúng ta sẽ sớm nói về điều đó 🙂

Vì vậy, hãy chạy lại câu lệnh SELECT để xem tên mới của cột:

thay đổi tên cột sau SP

Tốt. Hãy làm điều tương tự cho cột Tên . Chúng tôi sẽ thay đổi nó thành LastName :

thay đổi tên cột sau SP lastname

Thật dễ dàng.

3. Các cách sử dụng khác của

SP_RENAME

Thủ tục SP_RENAME có thể thay đổi nhiều hơn là chỉ tên cột. Có một số đối tượng trong SQL Server có thể được đổi tên bằng quy trình này.

Đối với các đối tượng khác, bạn chỉ cần chỉ định giá trị @objtype thích hợp. Đây là danh sách đầy đủ các giá trị @objtype mà bạn có thể chỉ định, cho biết tất cả các đối tượng khác nhau mà bạn có thể thay đổi bằng cách sử dụng SP_RENAME . Điều này được lấy trực tiếp từ tài liệu chính thức của Microsoft :

  • CỘT

  • CƠ SỞ DỮ LIỆU

  • INDEX

  • ĐỐI TƯỢNG

  • THỐNG KÊ

  • LOẠI NGƯỜI DÙNG

Quy trình được lưu trữ này chắc chắn là một quy trình tốt cần biết.

4. Hậu quả của việc đổi tên một cột

Được rồi, đây là nội dung về đổi tên cột:

Bạn cần đảm bảo rằng các đối tượng khác tham chiếu đến cột được cập nhật.

Hãy nghĩ về một ví dụ. Hãy tạo một Chế độ xem rất đơn giản để lấy các giá trị LastName khác biệt từ bảng Khách hàng của chúng tôi:

 TẠO CHẾ ĐỘ XEM DistinctLastNames
BẰNG 
CHỌN DISTINCT LastName TỪ Khách hàng 

Đây là chúng tôi tạo Chế độ xem và chạy một truy vấn nhanh đối với Chế độ xem:

tên cột thay đổi Chế độ xem

Được rồi, bây giờ hãy chạy SP_RENAME để thay đổi cột LastName thành CustomerLast :

 THỰC HIỆN SP_RENAME @objname = 'Khách hàng.LastName', @newname = 'CustomerLast', @objtype = 'COLUMN' 

Bây giờ, hãy thử chạy truy vấn với Chế độ xem:

thay đổi tên cột sau chế độ xem thay đổi cột

Ồ, Ồ. Đây là thông báo lỗi đầy đủ:

Tên cột ‘LastName’ không hợp lệ.
Bản tin 4413, Mức 16, Trạng thái 1, Dòng 32
Không thể sử dụng chế độ xem hoặc chức năng ‘DistinctLastNames’ do lỗi liên kết.

Quy trình sẽ không cập nhật những vị trí mà cột được tham chiếu.

Nếu chúng ta xem xét định nghĩa của Chế độ xem, chúng ta thấy nó vẫn có nội dung LastName :

change column name object explorer

tên cột thay đổi họ vẫn

Vì vậy, nếu bạn cập nhật tên cột, bạn cần tìm mọi nơi mà tên cột được tham chiếu và thay đổi nó .

Nghe có vẻ nhiều việc phải không?

Đúng vậy.

Đây là lý do tại sao bạn nên dành thời gian khi lần đầu tiên tạo bảng, cột, chỉ mục, v.v. Việc thay đổi những thứ này sau này sẽ khó hơn nhiều, sau khi chúng đã được thiết lập tốt trong cơ sở dữ liệu.

Có một truy vấn hữu ích mà bạn có thể chạy để tìm tất cả các đối tượng tham chiếu đến một từ cụ thể. Tất nhiên, từ đó có thể là tên cột mà bạn định thay đổi. Hãy xem hướng dẫn sau để xem truy vấn!

5. Mẹo và liên kết

Dưới đây là một số mẹo bạn nên biết về cách thay đổi tên cột trong SQL Server:

Mẹo số 1: Thủ tục

SP_RENAME

trả về 0 nếu tên đã được thay đổi thành công

Điều này là tốt để biết cho mục đích xử lý lỗi. Nếu thủ tục đã thay đổi thành công tên đối tượng của bạn, nó sẽ trả về 0 . Ngược lại, nếu thay đổi không thành công, nó sẽ trả về một giá trị khác không.

Mẹo số 2: Hãy nhớ rằng chúng tôi không sử dụng

ALTER COLUMN

Chúng tôi không sử dụng câu lệnh ALTER COLUMN để thay đổi tên cột. Câu lệnh này được dùng để thay đổi những thứ như kiểu dữ liệu của cột hoặc khả năng vô hiệu.

Chúng tôi sử dụng quy trình SP_RENAME để thay đổi tên cột (cũng như một số đối tượng khác trong SQL Server).

Mẹo số 3: Nhớ các quy tắc về các tham số cho

SP_RENAME

Dưới đây là các quy tắc chúng tôi đã nói về:

  • Bạn cần sử dụng số nhận dạng hai phần cho giá trị thông số @objname .
  • Bạn sử dụng giá trị nhận dạng một phần cho giá trị thông số @newname .
  • Giá trị @objtype trong trường hợp của chúng tôi chỉ đơn giản là từ

    ‘COLUMN’

    .

  • Tất cả các giá trị tham số được bao bọc trong dấu ngoặc kép.

Liên kết

Đây là tài liệu chính thức của Microsoft về quy trình SP_RENAME trong SQL Server: sp_rename (Transact-SQL)

Các bước tiếp theo:

Để lại nhận xét nếu bạn thấy hướng dẫn này hữu ích!

Bạn có biết cách thay đổi tên bảng trong SQL Server không? Tìm hiểu cách thực hiện!

Còn việc thay đổi kiểu dữ liệu của cột thì sao? Bạn cần biết!

Ngoài ra, chúng tôi đã đề cập đến chủ đề Chế độ xem trong SQL Server. Tìm hiểu về chúng tại đây:

Chế độ xem trong SQL Server là gì? Hướng dẫn cho người mới bắt đầu

Các hàm cũng là các đối tượng sẽ không được thay đổi tự động khi bạn thay đổi tên cột. Giống như Chế độ xem, bạn cũng cần phải đi đến định nghĩa của hàm và thay đổi tên cột. Tìm hiểu tất cả về các chức năng tại đây:

Chức năng do người dùng xác định trong SQL Server: Hướng dẫn đầy đủ

Cảm ơn bạn rất nhiều vì đã đọc! Tôi hy vọng hướng dẫn này đã giúp bạn.

Đảm bảo rằng bạn đăng ký nhận bản tin của tôi

Nếu bạn có bất kỳ câu hỏi nào hoặc nếu bạn đang gặp khó khăn với một chủ đề khác liên quan đến SQL Server, tôi rất vui được thảo luận. Để lại nhận xét hoặc truy cập trang liên hệ của tôi và gửi email cho tôi!


Xem thêm những thông tin liên quan đến chủ đề cách cập nhật tên cột trong sql

SQL tricks | How to update part of a string | UPDATE

alt

  • Tác giả: Learn at Knowstar
  • Ngày đăng: 2022-05-17
  • Đánh giá: 4 ⭐ ( 3939 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: The Create table , Insert table and SQL commands can be found here –

    https://know-star.blogspot.com/2022/05/sql-how-to-update-part-of-string.html

    Check out the complete list of SQL Query Interview Questions –
    https://www.youtube.com/watch?v=AhapksIsHxg&list=PL2-GO-f-XvjBl5fpzdfYaPW28PwsLzLc4

    How to install SQL Server ?
    https://www.youtube.com/watch?v=ncj0EDzy_rw

    Please do not forget to like, subscribe and share.

    For enrolling and enquiries, please contact us at
    Website – http://knowstar.org/
    Facebook – https://www.facebook.com/knowstartrainings/
    Linkedin – https://www.linkedin.com/company/knowstar-e-learning-solutions/?viewAsMember=true
    Email – learn@knowstar.org

Bài 2: Câu lệnh SQL tạo, cập nhật CSDL, bảng

  • Tác giả: timoday.edu.vn
  • Đánh giá: 5 ⭐ ( 3295 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Các câu lệnh SQL cơ bản cho tạo cơ sở dữ liệu, bảng dữ liệu, thay đổi cấu trúc bảng, tạo khoá chính, khoá ngoại, xoá bảng sử dụng cho ví dụ cơ sở dữ liệu sinh viên

[Tự học SQL] Tìm hiểu về INSERT INTO, UPDATE, DELETE dữ liệu trong SQL

  • Tác giả: cafedev.vn
  • Đánh giá: 4 ⭐ ( 3990 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bài này cafedev chia sẻ cho ace về cách sử dụng INSERT INTO, UPDATE, DELETE để thao tác với dữ liệu trong Cơ sở dữ liệu.

Lệnh UPDATE trong SQL

  • Tác giả: quantrimang.com
  • Đánh giá: 5 ⭐ ( 3894 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: UPDATE là truy vấn được sử dụng để chỉnh sửa những bản ghi đã tồn tại trong bảng. Bạn có thể sử dụng mệnh đề WHERE với lệnh UPDATE để cập nhật các hàng được chọn, nếu không muốn tất cả các hàng trong bảng bị ảnh hưởng.

Làm cách nào để cập nhật Cột danh tính trong SQL Server?

  • Tác giả: qastack.vn
  • Đánh giá: 4 ⭐ ( 5152 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] Bạn không thể cập nhật cột danh tính. SQL Server không cho phép cập nhật cột…

Liệt kê các bảng, các cột, kiểu dữ liệu của cột trong SQL Server

  • Tác giả: m.edu.vn
  • Đánh giá: 3 ⭐ ( 1119 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hàng ngày khi làm việc, có những yêu cầu mà chúng ta phải biết đến tên cột, độ dài tối đa, loại dữ liệu và liệu giá trị null có được chấp nhận cho từng cột có trong Cơ sở dữ liệu mình đang sử dụng hay không. Và kèm theo đó sẽ luôn có 1 câu hỏi, đó là làm thế nào để có thể liệt kê được lại tất cả các cột có trong mỗi bảng trong 1 cơ sở dữ liệu mình đang làm việc mà không phải mở từng bảng một trong Microsoft SQL Server Management Studio (SSMS) và sau đó ghi lại từng cột riêng lẻ ra Microsoft Excel. Các bạn hãy cùng MasterMOS Education tìm ra cách giải quyết bài toán đó qua bài viết này nhé.

UPDATE trong SQL Server

  • Tác giả: comdy.vn
  • Đánh giá: 4 ⭐ ( 5243 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Tìm hiểu cách sử dụng câu lệnh UPDATE trong SQL Server để thay đổi dữ liệu hiện có trong một bảng.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Phạm vi của một biến trong Java [Với ví dụ mã hóa] - xác định phạm vi của các biến trong java