Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3

5.6. Sửa đổi kèo bóng đá c1#

Khi bạn tạo kèo bóng đá c1 và bạn nhận ra rằng bạn đã phạm sai lầm hoặc các yêu cầu của thay đổi ứng dụng, bạn có thể bỏ kèo bóng đá c1 và tạo lại. Nhưng đây không phải là một tùy chọn thuận tiện nếu kèo bóng đá c1 đã được lấp đầy bằng dữ liệu hoặc nếu kèo bóng đá c1 được tham chiếu bởi các đối tượng cơ sở dữ liệu khác (ví dụ như một ràng buộc khóa nước ngoài). Vì thếPostgreSQL11639_11879

Bạn có thể:

  • Thêm cột

  • Xóa cột

  • Thêm các ràng buộc

  • Xóa các ràng buộc

  • Thay đổi giá trị mặc định

  • Thay đổi loại dữ liệu cột

  • Đổi tên cột

  • Đổi tên kèo bóng đá c1

Tất cả các hành động này được thực hiện bằng cách sử dụngBẢNG ALTERLệnh, có trang tham chiếu chứa các chi tiết ngoài các trang được đưa ra ở đây.

5.6.1. Thêm kèo bóng đá c1 cột#

Để thêm kèo bóng đá c1 cột, sử dụng lệnh như:

thay đổi sản phẩm kèo bóng đá c1 Thêm văn bản mô tả cột;

Cột mới ban đầu được lấp đầy với bất kỳ giá trị mặc định nào được đưa ra (NULL nếu bạn không chỉ địnhMặc địnhmệnh đề).

tip

từPostgreSQL11, Thêm một cột có giá trị mặc định không đổi không còn có nghĩa là mỗi hàng của kèo bóng đá c1 cần được cập nhật khiBẢNG ALTERCâu lệnh được thực thi. Thay vào đó, giá trị mặc định sẽ được trả về vào lần tiếp theo, hàng được truy cập và áp dụng khi kèo bóng đá c1 được viết lại, tạo rakèo bóng đá c1 thay đổirất nhanh ngay cả trên các kèo bóng đá c1 lớn.

Tuy nhiên, nếu giá trị mặc định biến động (ví dụ:clock_timestamp ()) Mỗi ​​hàng sẽ cần được cập nhật với giá trị được tính toán tại thời điểmkèo bóng đá c1 thay đổiđược thực thi. Để tránh hoạt động cập nhật có khả năng kéo dài, đặc biệt nếu bạn có ý định lấp đầy cột với các giá trị chủ yếu là Nondefault, có thể tốt hơn là thêm cột không có mặc định, hãy chèn các giá trị chính xác bằng cách sử dụngCập nhật, và sau đó thêm bất kỳ mặc định mong muốn như được mô tả bên dưới.

Bạn cũng có thể xác định các ràng buộc trên cột cùng kèo bóng đá c1 lúc, sử dụng cú pháp thông thường:

14657_14742

Trên thực tế, tất cả các tùy chọn có thể được áp dụng cho mô tả cột trongTạo kèo bóng đá c1có thể được sử dụng ở đây. Tuy nhiên, hãy nhớ rằng giá trị mặc định phải thỏa mãn các ràng buộc đã cho hoặcThêmsẽ thất bại. Ngoài ra, bạn có thể thêm các ràng buộc sau (xem bên dưới) sau khi bạn đã điền vào cột mới kèo bóng đá c1 cách chính xác.

5.6.2. Xóa kèo bóng đá c1 cột#

Để xóa cột, sử dụng lệnh như:

thay đổi sản phẩm kèo bóng đá c1 thả mô tả cột;

15618_15804PostgreSQLsẽ không âm thầm bỏ ràng buộc đó. Bạn có thể cho phép bỏ mọi thứ phụ thuộc vào cột bằng cách thêmCascade:

thay đổi sản phẩm kèo bóng đá c1 thả cột Mô tả Cascade;

xemPhần 5.1416207_16265

5.6.3. Thêm kèo bóng đá c1 ràng buộc#

Để thêm một ràng buộc, cú pháp ràng buộc kèo bóng đá c1 được sử dụng. Ví dụ:

Sản phẩm thay đổi BẢNG THÊM Kiểm tra (Tên < '');
Sản phẩm ALTER BẢNG Thêm ràng buộc kèo bóng đá c1 số_name duy nhất (sản phẩm_no);
Sản phẩm ALTER BẢNG Thêm khóa nước ngoài (sản phẩm_group_id) Tài liệu tham khảo sản phẩm_groups;

Để thêm một ràng buộc không null, không thể được viết dưới dạng ràng buộc kèo bóng đá c1, hãy sử dụng cú pháp này:

thay đổi sản phẩm kèo bóng đá c1 thay đổi cột sản phẩm_no không null;

Biên giới sẽ được kiểm tra ngay lập tức, vì vậy dữ liệu kèo bóng đá c1 phải thỏa mãn ràng buộc trước khi có thể được thêm vào.

5.6.4. Loại bỏ kèo bóng đá c1 ràng buộc#

Để xóa kèo bóng đá c1 ràng buộc, bạn cần biết tên của nó. Nếu bạn đặt tên cho nó thì điều đó thật dễ dàng. Mặt khác, hệ thống đã gán kèo bóng đá c1 tên được tạo, mà bạn cần tìm hiểu. ThePSQLlệnh\ DTableNamecó thể hữu ích ở đây; Các giao diện khác cũng có thể cung cấp một cách để kiểm tra chi tiết kèo bóng đá c1. Sau đó, lệnh là:

thay đổi sản phẩm kèo bóng đá c1 thả ràng buộc một số_name;

Như với việc thả kèo bóng đá c1 cột, bạn cần thêmCascadeNếu bạn muốn bỏ kèo bóng đá c1 ràng buộc mà kèo bóng đá c1 cái gì đó khác phụ thuộc vào. kèo bóng đá c1 ví dụ là kèo bóng đá c1 ràng buộc khóa nước ngoài phụ thuộc vào ràng buộc khóa duy nhất hoặc chính trên (các) cột được tham chiếu.

Điều này hoạt động giống nhau cho tất cả các loại ràng buộc ngoại trừ các ràng buộc không null. Để thả kèo bóng đá c1 ràng buộc không sử dụng NULL:

thay đổi sản phẩm kèo bóng đá c1 thay đổi cột sản phẩm_no không null;

(Nhớ lại rằng các ràng buộc không null không có tên.)

5.6.5. Thay đổi giá trị mặc định của kèo bóng đá c1 cột#

Để đặt mặc định mới cho cột, sử dụng lệnh như:

thay đổi sản phẩm kèo bóng đá c1 thay đổi giá cột Đặt mặc định 7.77;

Lưu ý rằng điều này không ảnh hưởng đến bất kỳ hàng hiện có nào trong kèo bóng đá c1, nó chỉ thay đổi mặc định cho tương laiChènlệnh.

Để xóa bất kỳ giá trị mặc định nào, sử dụng:

thay đổi sản phẩm kèo bóng đá c1 thay đổi giá bỏ giá mặc định;

Điều này thực sự giống như đặt mặc định thành NULL. Kết quả là, việc thả mặc định không được xác định là lỗi không phải là lỗi mà mặc định là mặc định là giá trị null.

5.6.6. Thay đổi kiểu dữ liệu của cột#

Để chuyển đổi cột thành kiểu dữ liệu khác, sử dụng lệnh như:

thay đổi sản phẩm thay đổi loại giá cột số (10,2);

Điều này sẽ chỉ thành công nếu mỗi mục nhập hiện tại trong cột có thể được chuyển đổi thành loại mới bằng kèo bóng đá c1 diễn viên ngầm. Nếu cần chuyển đổi phức tạp hơn, bạn có thể thêmSử dụngmệnh đề chỉ định cách tính các giá trị mới từ cũ.

PostgreSQL20587_20929

5.6.7. Đổi tên kèo bóng đá c1 cột#

Để đổi tên cột:

21341_21409

5.6.8. Đổi tên một kèo bóng đá c1#

Để đổi tên một kèo bóng đá c1:

thay đổi sản phẩm kèo bóng đá c1 đổi tên thành các mục;

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.