SSMS
 sql >> Cơ Sở Dữ Liệu >  >> Database Tools >> SSMS

Viết truy vấn để tạo một số tập lệnh để đổi tên một số cột trong toàn bộ cơ sở dữ liệu

Mặc dù đổi tên cột trong bảng không khó bằng cách sử dụng sp_rename , việc thay đổi các chế độ xem tham chiếu và các thủ tục được lưu trữ là không hề nhỏ nếu không có sự trợ giúp của các công cụ.

T-SQL dưới đây sẽ tạo tập lệnh để đổi tên tất cả các cột bắt đầu bằng chữ thường. Tuy nhiên, điều khó xảy ra là việc đổi tên sẽ không thành công khi tồn tại các phụ thuộc được thực thi (ví dụ:các đối tượng liên kết lược đồ) và sẽ không xử lý các khung nhìn, procs. et. al.

SELECT 
      N'EXEC sp_rename ''' 
    + QUOTENAME(s.name) + N'.' + QUOTENAME(t.name) + N'.' + QUOTENAME(c.name) 
    + ''', ''' + UPPER(LEFT(c.name, 1)) + SUBSTRING(c.name,2,127) + ''', ''COLUMN'';'
FROM sys.schemas AS s
JOIN sys.tables AS t ON t.schema_id = s.schema_id
JOIN sys.columns AS c ON c.object_id = t.object_id
WHERE 
    LEFT(c.name, 1) COLLATE Latin1_General_CS_AS <> UPPER(LEFT(c.name, 1)) COLLATE Latin1_General_CS_AS
    AND t.is_ms_shipped = 0;

Tôi khuyên bạn nên sử dụng SSDT , được bao gồm trong Visual Studio 2019 (bao gồm cả Phiên bản cộng đồng miễn phí). Tạo một dự án cơ sở dữ liệu SQL Server mới, nhập cơ sở dữ liệu hiện có, đổi tên cột bằng cách sử dụng tùy chọn Refactor -> Rename, sau đó xuất bản dự án dựa trên cơ sở dữ liệu đích. Xuất bản cung cấp tùy chọn để áp dụng các thay đổi ngay lập tức và / hoặc chỉ tạo tập lệnh. Tập lệnh sẽ bao gồm DDL cho việc đổi tên cột cũng như thay đổi tên cột trong tất cả các đối tượng tham chiếu.

Nếu cột được đặt bí danh với tên không mong muốn trong chế độ xem, tài liệu, v.v., những bí danh đó cũng sẽ cần được thay đổi.




  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Bộ kết quả đặt SSIS từ luồng dữ liệu thành biến

  2. SQL Server Management Studio - Tài liệu theo thẻ

  3. bảng điều khiển quản lý máy chủ sql không hoạt động với các ký tự nhiều byte

  4. Di chuyển cơ sở dữ liệu SQL với SSMS

  5. Truy vấn SQL sử dụng khung thực thể chạy chậm hơn, sử dụng kế hoạch truy vấn không hợp lệ