Oracle ALTER SEQUENCE bằng các ví dụ thực tế

Oracle Alter Sequence Bang Cac Vi Du Thuc Te



Trong Oracle, một chuỗi là một đối tượng cơ sở dữ liệu tạo ra một chuỗi số nguyên duy nhất có thể được sử dụng làm khóa chính hoặc cho bất kỳ mục đích nào khác khi yêu cầu một số duy nhất. ALTER SEQUENCE là một công cụ mạnh mẽ trong Oracle cho phép bạn sửa đổi các thuộc tính của một chuỗi trong cơ sở dữ liệu. Lệnh ALTER SEQUENCE thoạt nghe có vẻ khó khăn nhưng các ví dụ thực tế có thể giúp bạn hiểu và tận dụng hết tiềm năng của nó.

Hướng dẫn này sẽ bao gồm các ví dụ sau:

Đặt lại giá trị chuỗi

Để đặt lại giá trị trình tự hoặc khởi động lại giá trị trình tự từ giá trị ban đầu, “ THAY ĐỔI TRÌNH TỰ ” lệnh với “ KHỞI ĐỘNG LẠI ” mệnh đề có thể được sử dụng. Ví dụ được đưa ra dưới đây:







THAY ĐỔI TRÌNH TỰ LINUXHINT_SEQ KHỞI ĐỘNG LẠI;

Trong lệnh trên, “ LINUXHINT_SEQ ” đại diện cho tên dãy.



đầu ra



Đầu ra cho thấy trình tự đã được thiết lập lại.





Thay đổi giá trị nhỏ nhất của dãy

Khi một chuỗi được tạo trong Oracle, theo mặc định, giá trị tối thiểu của nó được đặt thành 1. “ THAY ĐỔI TRÌNH TỰ ” lệnh với “ giá trị nhỏ nhất ” mệnh đề có thể được sử dụng để thay đổi giá trị nhỏ nhất của dãy số. Ví dụ được đưa ra dưới đây:

THAY ĐỔI TRÌNH TỰ LINUXHINT_SEQ MINVALUE -1;

Trong ví dụ này, giá trị tối thiểu mới là -1 .



đầu ra

Đầu ra cho thấy giá trị tối thiểu đã được thay đổi.

Thay đổi giá trị tối đa của chuỗi

Theo mặc định, giá trị tối đa của một chuỗi Oracle là “10^27 – 1”, đây là giá trị lớn nhất có thể cho một số thập phân gồm 38 chữ số. Để thay đổi giá trị chuỗi tối đa, nút “ THAY ĐỔI TRÌNH TỰ ” lệnh với “ GIÁ TRỊ TỐI ĐA ” mệnh đề có thể được sử dụng. Ví dụ được cung cấp dưới đây:

THAY ĐỔI TRÌNH TỰ LINUXHINT_SEQ MAXVALUE 1000;

Trong ví dụ trên, giá trị tối đa mới sẽ là 1000 .

đầu ra

Trong ảnh chụp màn hình, có thể thấy rằng giá trị tối đa đã được thay đổi.

Ghi chú : Trong ví dụ trên, trình tự sẽ ngừng tạo giá trị sau khi đạt đến 1000 và mọi nỗ lực tạo giá trị vượt quá điểm đó sẽ dẫn đến lỗi.

Thay đổi kích thước bộ đệm của chuỗi

Kích thước bộ đệm quyết định số thứ tự được phân bổ trước và lưu trữ trong bộ nhớ để truy cập nhanh hơn. Để thay đổi kích thước bộ đệm của trình tự, hãy sử dụng “ bộ nhớ cache ” mệnh đề với “ THAY ĐỔI TRÌNH TỰ ' yêu cầu. Một ví dụ được đưa ra dưới đây:

THAY ĐỔI TRÌNH TỰ LINUXHINT_SEQ CACHE 50;

Trong ví dụ trên, kích thước bộ đệm của chuỗi được đặt thành năm mươi . Nghĩa là dãy số 50 sẽ được phân bổ trước tại một thời điểm để truy cập nhanh hơn.

đầu ra

Đầu ra mô tả rằng kích thước bộ đệm đã được thay đổi.

Đặt kích thước và thứ tự của chuỗi bộ đệm

Để đặt kích thước bộ đệm chuỗi và tạo số thứ tự theo thứ tự, hãy sử dụng “ ĐẶT HÀNG ' Và ' bộ nhớ cache ” mệnh đề với “ THAY ĐỔI TRÌNH TỰ ' yêu cầu. Đây là một ví dụ:

THAY ĐỔI TRÌNH TỰ LINUXHINT_SEQ CACHE 100 LỆNH;

Trong ví dụ này, giá trị kích thước bộ đệm mới sẽ là 100 .

đầu ra

Đầu ra hiển thị rằng các thay đổi đã được thực hiện đối với trình tự.

Đặt trình tự để tạo giá trị giảm dần

Khoảng cách giữa các số thứ tự được xác định bởi số gia. Giá trị gia tăng được đặt thành 1 theo mặc định, có nghĩa là số tiếp theo trong chuỗi được trả về mỗi khi chuỗi được gọi. Khi số gia được đặt thành -1, chuỗi sẽ tạo ra các số nguyên theo thứ tự giảm dần.

Để đặt trình tự tạo giá trị giảm dần, hãy sử dụng “ TĂNG THEO ” với “ THAY ĐỔI TRÌNH TỰ ” và đặt giá trị thành -1. Ví dụ được đưa ra dưới đây:

THAY ĐỔI TRÌNH TỰ TĂNG LINUXHINT_SEQ BẰNG -1;

Trong ví dụ này, giá trị là -1 , có nghĩa là mỗi khi chuỗi được gọi, số trước đó trong chuỗi sẽ được trả về.

đầu ra

Đầu ra mô tả rằng trình tự đã được thiết lập để tạo ra các giá trị giảm dần.

Thay đổi giá trị gia tăng của chuỗi

Để thay đổi giá trị gia tăng của chuỗi, hãy sử dụng “ TĂNG THEO ” với “ THAY ĐỔI TRÌNH TỰ ” lệnh và đặt giá trị tương ứng. Ví dụ được cung cấp dưới đây:

THAY ĐỔI TRÌNH TỰ TĂNG LINUXHINT_SEQ BẰNG 2;

Trong ví dụ này, giá trị là 2 , có nghĩa là mỗi khi dãy được gọi, số tiếp theo trong dãy sẽ tăng thêm 2.

đầu ra

Đầu ra hiển thị rằng trình tự đã được thay đổi tương ứng.

Thay đổi trình tự để kích hoạt tùy chọn chu kỳ

Khi tùy chọn chu kỳ được bật cho một trình tự, trình tự sẽ bao quanh và bắt đầu lại từ đầu (MINVALUE) sau khi đạt đến giá trị tối đa (MAXVALUE). Để bật tùy chọn này, hãy sử dụng nút “ XE ĐẠP ” mệnh đề với “ THAY ĐỔI TRÌNH TỰ ' yêu cầu. Ví dụ được đưa ra dưới đây:

THAY ĐỔI TRÌNH TỰ LINUXHINT_SEQ CHU KỲ;

đầu ra

Đầu ra hiển thị tùy chọn chu trình đã được kích hoạt.

Thay đổi trình tự để vô hiệu hóa chu trình

Khi tùy chọn chu trình bị tắt đối với một trình tự, trình tự đó sẽ ngừng tạo giá trị sau khi đạt đến giá trị tối đa (MAXVALUE) hoặc giá trị tối thiểu (MINVALUE), tùy thuộc vào thứ tự tạo. Để tắt tùy chọn này, hãy sử dụng mệnh đề “NOCYCLE” với lệnh “ALTER SEQUENCE”. Ví dụ được cung cấp dưới đây:

THAY ĐỔI TRÌNH TỰ LINUXHINT_SEQ NOCYCLE;

đầu ra

Đầu ra cho thấy rằng tùy chọn chu kỳ đã bị vô hiệu hóa.

Thay đổi trình tự để sửa đổi nhiều tùy chọn

Nhập lệnh đã cho để đặt chuỗi có số gia âm bằng -1, giá trị tối đa là 10 và bật tùy chọn chu trình:

THAY ĐỔI TRÌNH TỰ TĂNG LINUXHINT_SEQ BẰNG -1 MAXVALUE 10 CHU KỲ;

đầu ra

Đầu ra cho thấy các thay đổi đã được thực hiện thành công đối với trình tự.

Phần kết luận

Trong Oracle, “ THAY ĐỔI TRÌNH TỰ ” Lệnh cho phép bạn thay đổi các thuộc tính của chuỗi bằng cách đặt lại giá trị chuỗi, thay đổi giá trị tối thiểu và tối đa, giá trị gia tăng, kích thước bộ nhớ đệm, thứ tự và bật hoặc tắt tùy chọn chu kỳ. Những thay đổi này hữu ích trong nhiều loại trường hợp, chẳng hạn như khi bạn cần thay đổi giá trị bắt đầu của một chuỗi hoặc điều chỉnh kích thước bộ nhớ đệm để có hiệu suất tốt hơn. Bài đăng này đã giải thích các trường hợp sử dụng khác nhau của lệnh ALTER SEQUENCE bằng các ví dụ thực tế.