Cách thêm và bỏ các ràng buộc từ bảng hiện có trong Oracle – ví dụ về thả ràng buộc oracle

Trong bài viết này, tôi sẽ thảo luận về Cách thêm và loại bỏ các ràng buộc từ một bảng hiện có trong Oracle với các Ví dụ.

Bạn đang xem : ví dụ về phép thuật giảm ràng buộc

Cách thêm và bỏ các ràng buộc từ một bảng hiện có trong Oracle

Trong bài viết này, tôi sẽ thảo luận về Cách thêm và loại bỏ các ràng buộc từ một bảng hiện có trong Oracle với các Ví dụ. Vui lòng đọc bài viết trước của chúng tôi, nơi chúng tôi đã thảo luận về Cách tạo tên Ràng buộc do người dùng xác định trong Oracle với các ví dụ.

Làm cách nào để thêm các ràng buộc vào bảng hiện có trong oracle?

Giả sử, bạn đã tạo một bảng và sau đó bạn muốn thêm các ràng buộc vào bảng hiện có đó. Để làm như vậy, chúng ta cần sử dụng cú pháp sau.

BẢNG ALTER & lt; TN & gt; THÊM TÊN TỪ KHÓA CONSTRAINT & lt; CONSTRAINT & gt; & lt; LOẠI CONSTRAINT & gt; (& lt; TÊN CỘT & gt;);

Ví dụ:

Vui lòng tạo các bảng Phòng ban và Nhân viên mà không có bất kỳ ràng buộc nào bằng cách thực thi Tập lệnh SQL sau.

 TẠO BẢNG Vụ1
(
    Id INT,
    Đặt tên VARCHAR2 (20),
    Vị trí VARCHAR2 (20)
);

TẠO BẢNG NHÂN VIÊN1
(
    ID INT,
    Đặt tên VARCHAR2 (20),
    Gửi email tới VARCHAR2 (20),
    TUỔI INT,
    DepartmentId INT
);

Như bạn có thể thấy, hai bảng trên được tạo không có ràng buộc. Bây giờ, chúng ta hãy xem cách thêm các loại ràng buộc khác nhau trong hai bảng trên.

THÊM CÔNG CỤ CHÍNH CHÍNH TRONG ORACLE:

Hãy để chúng tôi thêm khóa chính trên cột Id của cả bảng Department1 và Employee1. Lưu ý, ràng buộc phải là duy nhất.

 ALTER TABLE Vụ1 THÊM CÔNG TÁC PK_ID2 KHÓA CHÍNH (Id);
ALTER TABLE Nhân viên 1 THÊM CÔNG TY CỔ PHẦN PK_ID3 KHÓA CHÍNH (Id); 

Khi bạn thực hiện câu lệnh ALTER TABLE ở trên, bạn sẽ thấy rằng các bảng được thay đổi như thể hiện trong hình ảnh bên dưới. Tại đây, nó thêm Ràng buộc khóa chính trên cột Id của cả hai bảng.

Cách thêm và bỏ các ràng buộc từ một bảng hiện có trong Oracle

THÊM CÔNG TÁC DUY NHẤT

TRONG ORACLE

:

Hãy để chúng tôi thêm ràng buộc khóa duy nhất vào cột Email của bảng Employee1. Để làm như vậy, chúng ta cần thực hiện truy vấn sau.

ALTER TABLE Nhân viên1 THÊM CÔNG TÁC UQ_Email DUY NHẤT (Email);

Khi bạn thực hiện câu lệnh ALTER TABLE ở trên, bạn sẽ thấy rằng bảng được thay đổi như thể hiện trong hình ảnh bên dưới. Tại đây, nó thêm Ràng buộc khóa duy nhất trên cột Email của bảng Employee1.

THÊM CONSTRAINT DUY NHẤT TRONG ORACLE

THÊM CÔNG CỤ KIỂM TRA

TRONG ORACLE

:

>

Hãy để chúng tôi thêm ràng buộc Kiểm tra trên cột Tuổi của bảng Nhân viên 1. Để làm như vậy, chúng ta cần thực hiện truy vấn sau.

ALTER TABLE Nhân viên 1 THÊM KIỂM TRA CHK_AGE CHK_AGE (Tuổi & gt; = 18);

Khi bạn thực hiện câu lệnh ALTER TABLE ở trên, bạn sẽ thấy rằng bảng được thay đổi như thể hiện trong hình ảnh bên dưới. Tại đây, nó thêm Ràng buộc Kiểm tra trên cột Độ tuổi của bảng Nhân viên 1.

THÊM CÔNG CỤ KIỂM TRA TRONG ORACLE

THÊM CONSTRAINT “KHÔNG ĐẦY ĐỦ” VÀO ORACLE:

Chúng ta cần sử dụng cú pháp sau để thêm ràng buộc NOT NULL vào bảng hiện có trong oracle.

BẢNG ALTER & lt; TN & gt; SỬA ĐỔI & lt; TÊN CỘT & gt; CONSTRAINT & lt; TÊN KHÓA CONSTRAINT & gt; KHÔNG ĐẦY ĐỦ;

Hãy để chúng tôi thêm ràng buộc NOT NULL vào cột Tên của bảng Employee1. Để làm như vậy, chúng ta cần thực hiện truy vấn sau.

ALTER TABLE Nhân viên1 Tên sửa đổi CONSTRAINT NN_NAME NOT NULL;

Khi bạn thực hiện câu lệnh ALTER TABLE ở trên, bạn sẽ thấy rằng bảng được thay đổi như thể hiện trong hình ảnh bên dưới. Tại đây, nó thêm Ràng buộc KHÔNG ĐẦY ĐỦ trên cột Tên của bảng Employee1.

THÊM "KHÔNG ĐẦY ĐỦ" CONSTRAINT TRONG ORACLE

THÊM CÁC CÔNG TÁC KHÓA NGOÀI TRỜI TRONG ORACLE:

Chúng ta cần sử dụng cú pháp sau để thêm ràng buộc NGOẠI KHÓA trên bảng hiện có trong oracle.

Cú pháp: ALTER TABLE & lt; TN & gt; THÊM TÊN TỪ KHÓA CONSTRAINT & lt; CONSTRAINT & gt; TỪ KHÓA NGOẠI LỆ (& lt; CỘT THÔNG DỤNG CỦA BẢNG TRẺ EM & gt;) TÀI LIỆU THAM KHẢO & lt; BẢNG PHỤ HUYNH & gt; (& lt; CỘT THÔNG DỤNG CỦA BẢNG PHỤ HUYNH & gt;) TRÊN XÓA CASCADE / BẬT BỘ XÓA ĐẦY ĐỦ;

Hãy để chúng tôi thêm ràng buộc NGOẠI KHÓA trên cột DepartmentId của bảng Employee1, cột này tham chiếu đến cột Id của bảng Department1. Để làm như vậy, chúng ta cần thực hiện truy vấn sau.

ALTER TABLE Nhân viên1 THÊM KHÓA NGOẠI TỆ FK_DEPARTMENTID NGOẠI KHÓA (DepartmentId) TÀI LIỆU THAM KHẢO Vụ1 (Id) VỀ XÓA CASCADE;

Khi bạn thực hiện câu lệnh ALTER TABLE ở trên, bạn sẽ thấy rằng bảng được thay đổi như thể hiện trong hình ảnh bên dưới. Ở đây, nó thêm Ràng buộc NGOẠI KHÓA trên cột DepartmentId của bảng Employee1, tham chiếu đến cột Id của bảng Department1.

THÊM CÔNG TÁC TỪ KHÓA NGOẠI LỆ TRONG ORACLE

Chúng tôi đã thêm các loại ràng buộc khác nhau trong bảng Employee1. Hãy để chúng tôi xác minh các ràng buộc trong bảng Employee1 bằng cách thực hiện truy vấn bên dưới.

 CHỌN CONSTRAINT_NAME, CONSTRAINT_TYPE TỪ USER_CONSTRAINTS WHERE TABLE_NAME = 'EMPLOYEE1'; 

Khi bạn thực hiện truy vấn trên, bạn sẽ nhận được kết quả sau. Theo mặc định, NOT NULL sẽ tạo ra một ràng buộc kiểm tra trong oracle. Ở đây, R nghĩa là Ràng buộc khóa ngoại, C nghĩa là Ràng buộc kiểm tra, U nghĩa là Ràng buộc duy nhất và P nghĩa là Ràng buộc khóa chính.

Cách thêm và bỏ các ràng buộc từ một bảng hiện có trong Oracle với Ví dụ

Làm cách nào để loại bỏ các ràng buộc khỏi một bảng hiện có trong Oracle?

Chúng ta cần sử dụng cú pháp sau để loại bỏ các ràng buộc khỏi bảng hiện có trong oracle.

BẢNG ALTER & lt; TN & gt; DROP CONSTRAINT & lt; CONSTRAINT KEY NAME & gt ;;

XÓA TỪ KHÓA CHÍNH:

Hãy để chúng tôi xóa khóa chính khỏi bảng Employee1. Để làm như vậy, chúng ta cần thực hiện truy vấn sau. Trong bảng nhân viên, ràng buộc khóa chính được tạo với tên PK_ID3.

ALTER TABLE Nhân viên 1 DROP CONSTRAINT PK_ID3;

Khi bạn thực hiện truy vấn trên, ràng buộc khóa chính sẽ bị xóa khỏi bảng Employee1.

XÓA TỪ KHÓA NGOẠI LỆ:

Hãy để chúng tôi loại bỏ khóa ngoại khỏi bảng Employee1. Để làm như vậy, chúng ta cần thực hiện truy vấn sau. Trong bảng Employee1, ràng buộc khóa ngoại được tạo với tên FK_DEPARTMENTID.

ALTER TABLE Nhân viên 1 DROP CONSTRAINT FK_DEPARTMENTID;

Khi bạn thực hiện truy vấn trên, ràng buộc khóa ngoại sẽ bị xóa khỏi bảng Employee1.

Lưu ý: Khi chúng ta bỏ khóa chính cùng với các ràng buộc khóa ngoại từ bảng mẹ và bảng con thì chúng ta cần sử dụng câu lệnh “CASCADE” như được minh họa trong ví dụ dưới đây.

ALTER TABLE Department1 DROP CONSTRAINT PK_ID2 CASCADE;

DUY NHẤT, KIỂM TRA, KHÔNG ĐẦY ĐỦ:

Hãy để chúng tôi loại bỏ các ràng buộc DUY NHẤT, KIỂM TRA, KHÔNG ĐẦY ĐỦ khỏi bảng Employee1 bằng cách thực thi Tập lệnh SQL sau.

 ALTER TABLE Nhân viên1 DROP CONSTRAINT CHK_AGE;
ALTER TABLE Nhân viên1 DROP CONSTRAINT UQ_EMAIL;
ALTER TABLE Nhân viên1 DROP CONSTRAINT NN_NAME; 

Trong bài viết tiếp theo, tôi sẽ thảo luận về Cách đổi tên một ràng buộc trong Oracle với các Ví dụ. Ở đây, trong bài viết này, tôi cố gắng giải thích Cách thêm và loại bỏ các ràng buộc từ một bảng hiện có trong Oracle với các Ví dụ và tôi hy vọng bạn thích điều này. Cách thêm và bỏ các ràng buộc từ một bảng hiện có trong Oracle với Bài viết ví dụ.


Xem thêm những thông tin liên quan đến chủ đề ví dụ về thả ràng buộc oracle

Lý thuyết về ràng buộc toàn vẹn | RBTV liên bộ liên thuộc tính (Phần 1)

alt

  • Tác giả: Vo Thi Hong Tuyet
  • Ngày đăng: 2021-12-16
  • Đánh giá: 4 ⭐ ( 3591 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Khái niệm RBTV
    Cách biểu diễn RBTV
    Bảng tầm ảnh hưởng
    RBTV liên bộ liên thuộc tính
    Phần 2: https://youtu.be/4mj7GrxXIMM

Tìm ràng buộc khoá ngoại trong Oracle

  • Tác giả: quantrimang.com
  • Đánh giá: 3 ⭐ ( 4334 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Nhiều nhà phát triển thấy rằng thật khó có thể xoá được các bản ghi trên bảng cha khi các bản ghi con tham chiếu tới qua ràng buộc khoá ngoại (tính toàn vẹn tham chiếu). Các ràng buộc đảm bảo cho dữ liệu hợp lệ và có hiệu lực. Nếu không có ràng buộc, chúng ta chỉ lưu trữ các dữ liệu không hợp lệ.

Làm thế nào để loại bỏ các ràng buộc từ bảng MySQL của tôi?

  • Tác giả: qastack.vn
  • Đánh giá: 5 ⭐ ( 6135 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] Mysql có một cú pháp đặc biệt để loại bỏ các ràng buộc khóa ngoài: ALTER…

LÀM CHẬM VIỆC KIỂM TRA RÀNG BUỘC VÀ DUY TRÌ TOÀN VẸN THAM CHIẾU

  • Tác giả: viblo.asia
  • Đánh giá: 3 ⭐ ( 5116 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: I. Làm chậm kiểm tra ràng buộc: – Trong hệ quản trị cơ sở dữ liệu Oracle thì mỗi lần xuất hiện một sửa đổi cơ sở dữ liệu => ràng buộc toàn vẹn sẽ được kiểm tra ngay sau đó nếu phép sửa đổi đòi hỏi kiể…

Sequence trong SQL

  • Tác giả: viettuts.vn
  • Đánh giá: 3 ⭐ ( 4663 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Một sequence trong SQL là một tập các số nguyên 1, 2, 3, … được tạo theo thứ tự theo yêu cầu. Các sequence thường được sử dụng trong cơ sở dữ liệu vì nhiều

Ràng buộc (Constraint) trong SQL

  • Tác giả: vietjack.com
  • Đánh giá: 5 ⭐ ( 4133 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Ràng buộc (Constraint) trong SQL – Học SQL cơ bản nâng cao. Học SQL trực tuyến theo các bước từ Khái niệm về database, Cú pháp SQL, Truy vấn SELECT, Truy vấn INSERT, Lệnh DELETE, Truy vấn UPDATE, Ràng buộc (Constraint), Truy vấn DROP, Lệnh TRUNCATE, Từ khóa DISTINCT, Mệnh đề ORDER BY, Mệnh đề GROUP BY, Mệnh đề WHERE, Sử dụng Join, Sử dụng View, Sử dụng Sequence, Transaction, Hàm xử lý, Bảng tạm, Toán tử.

Làm quen với SQL

  • Tác giả: codelearn.io
  • Đánh giá: 3 ⭐ ( 3056 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Khóa học này sẽ giúp các lập trình viên nắm được nguyên tắc, cú pháp và cách thức hoạt động của SQL (Structured Query Language).

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  Tổng quan về câu lệnh T-SQL If Exists trong cơ sở dữ liệu SQL Server - máy chủ sql nếu tồn tại