PL/SQL Mã định danh, quy ước đặt tên và biến được chấp nhận

⚡ Tóm tắt thông minh

Các định danh PL/SQL là tên được đặt cho các đối tượng PL/SQL như biến, hằng số, con trỏ và thủ tục. Chúng phải bắt đầu bằng một chữ cái, không quá 30 ký tự, không phân biệt chữ hoa chữ thường và tuân theo các quy ước đặt tên để chỉ ra cấp độ và kiểu dữ liệu của biến.

  • 🏷️ Định nghĩa: Một định danh dùng để đặt tên cho bất kỳ đối tượng PL/SQL nào, từ biến đến gói hoặc nhãn.
  • 📏 Quy tắc: Phải bắt đầu bằng một chữ cái, có tối đa 30 ký tự và không chứa khoảng trắng.
  • 🔠 Các biển báo được phép: Dấu đô la, dấu gạch dưới và dấu thăng được phép sử dụng bên trong một định danh.
  • 🧭 Quy ước đặt tên: Chữ cái đầu tiên biểu thị cấp độ (P, L, G) và chữ cái thứ hai biểu thị loại (C, V, N, R, T).
  • 📦 Biến: Biến là một định danh được liên kết với một vùng lưu trữ, được khai báo với một kiểu dữ liệu hợp lệ.
  • 📝 Tờ khai: Các biến được khai báo trong phần khai báo trước khi sử dụng.
  • ➡️ Phân công: Giá trị có thể được thiết lập khi khai báo hoặc sau đó bằng cách sử dụng toán tử :=.

Quy ước đặt tên định danh PL/SQL

Mã định danh PL/SQL là gì?

Định danh Trong PL/SQL, định danh là tên được đặt cho một đối tượng PL/SQL. Đối tượng đó có thể là hằng số, biến, ngoại lệ, con trỏ, thủ tục, hàm, gói, trình kích hoạt, kiểu đối tượng, từ khóa dành riêng hoặc nhãn. Định danh có thể chứa chữ cái, chữ số, dấu, dấu gạch dưới, v.v. Chúng không phân biệt chữ hoa chữ thường và giới hạn ở 30 ký tự.

Thuộc tính của Mã định danh PL/SQL

Dưới đây là các thuộc tính chính của mã định danh PL/SQL:

  • Phải bắt đầu bằng một chữ cái.
  • Độ dài tối đa được giới hạn ở 30 ký tự.
  • Không được chứa ký tự khoảng trắng.
  • Có thể chứa dấu đô la ('$'), dấu gạch dưới ('_') và dấu thăng ('#').
  • Không phân biệt chữ hoa chữ thường.

Quy ước đặt tên trong PL/SQL

Trong một chương trình phức tạp, chúng ta có thể phải bao gồm nhiều định danh, chẳng hạn như biến và con trỏ. Để tránh nhầm lẫn và tăng khả năng đọc hiểu, chúng ta cần tuân theo một số quy ước đặt tên nhất định.

Các quy ước đặt tên thường dùng trong PL/SQL như sau.

Chữ cái đầu tiên chỉ định cấp độ được khai báo của biến:

  • 'P' – biến được khai báo ở cấp độ tham số.
  • 'L' – biến được khai báo trong khối cục bộ.
  • 'G' – biến được khai báo ở cấp độ toàn cục.

Chữ cái thứ hai chỉ định loại định danh:

  • 'C' – mã định danh con trỏ.
  • 'V' – Kiểu dữ liệu VARCHAR và CHAR.
  • 'N' – Kiểu dữ liệu SỐ.
  • 'R' – loại bản ghi.
  • 'T' – loại bảng.

Dưới đây là một số ví dụ về quy ước đặt tên đúng trong PL/SQL:

  • Lv_name – biến cấp cục bộ có kiểu dữ liệu VARCHAR/CHAR.
  • Pc_num – định danh con trỏ ở cấp tham số.
  • Gn_user_id – biến cấp toàn cục của kiểu dữ liệu số.

Biến PL/SQL

Biến Trong PL/SQL, biến là các định danh cơ bản được gán cho một vùng lưu trữ mà chương trình có thể thao tác. Biến là các vị trí giữ chỗ nơi người dùng có thể lưu trữ giá trị. Các biến này cần được liên kết với một kiểu dữ liệu PL/SQL hợp lệ trước khi sử dụng. Kiểu dữ liệu xác định phương thức lưu trữ và xử lý cho các biến này.

Khai báo biến PL/SQL

Biến chủ yếu được sử dụng để lưu trữ dữ liệu trong quá trình thao tác hoặc xử lý dữ liệu. Chúng phải được khai báo trước khi sử dụng, bên trong phần khai báo của tệp. Khối PL/SQL.

Khai báo biến là quá trình gán tên cho một phần tử giữ chỗ và liên kết nó với một kiểu dữ liệu hợp lệ.

cú pháp

<variable_name> <datatype>;

Cú pháp trên cho thấy cách khai báo một biến trong phần khai báo.

Lưu trữ dữ liệu trong các biến PL/SQL

Khi một biến được khai báo, nó sẵn sàng chứa dữ liệu thuộc kiểu dữ liệu đã được định nghĩa. Giá trị có thể được gán trong phần thực thi hoặc tại thời điểm khai báo. Giá trị có thể là một hằng số hoặc giá trị của một biến khác. Sau khi được gán, nó được lưu trữ trong không gian bộ nhớ được cấp phát cho biến đó.

cú pháp

<variable_name> <datatype> := <default_value>;

Cú pháp trên cho thấy cách khai báo một biến và gán giá trị cho nó trong phần khai báo.

<variable_name> <datatype>;
<variable_name> := <value>;

Cú pháp trên cho thấy cách gán giá trị cho một biến đã được khai báo.

Ví dụ 1: Trong ví dụ này, chúng ta sẽ học cách khai báo một biến và gán giá trị cho nó. Chúng ta sẽ in 'GURU99' trong chương trình sau bằng cách sử dụng biến.

Ví dụ về khai báo và gán biến PL/SQL

DECLARE
lv_name VARCHAR2(50);
lv_name_2 VARCHAR2(50) := 'GURU99';
BEGIN
lv_name := lv_name_2;
dbms_output.put_line(lv_name);
END;
/

Code Giải thích

  • Code dòng 2: Khai báo biến 'lv_name' kiểu VARCHAR2 với kích thước 50.
  • Code dòng 3: Khai báo biến 'lv_name_2' kiểu VARCHAR2 với kích thước 50 và gán giá trị mặc định bằng chuỗi ký tự 'GURU99'.
  • Code dòng 5: Giá trị của biến 'lv_name' được gán từ biến 'lv_name_2'.
  • Code dòng 6: In ra giá trị đã lưu của biến 'lv_name'.

Khi đoạn mã trên được thực thi, bạn sẽ nhận được kết quả đầu ra sau.

Đầu ra

GURU99

Câu Hỏi Thường Gặp

Mã định danh phải bắt đầu bằng một chữ cái, có tối đa 30 ký tự, không chứa khoảng trắng và chỉ được sử dụng chữ cái, chữ số và các ký hiệu đô la, gạch dưới và dấu thăng. Mã định danh không phân biệt chữ hoa chữ thường.

Tiền tố mã hóa phạm vi và kiểu dữ liệu ngay từ cái nhìn đầu tiên, vì vậy Lv_name được hiểu là một biến varchar cục bộ. Trong một khối lớn, điều này giúp giảm sự nhầm lẫn và làm cho mã dễ bảo trì hơn.

Toán tử := dùng để gán giá trị cho một biến. Dấu = đơn được dùng để so sánh bên trong các điều kiện. Việc trộn lẫn chúng là một lỗi thường gặp của người mới bắt đầu, dẫn đến lỗi biên dịch.

Đúng vậy. Trí tuệ nhân tạo (AI) có thể quét một gói dữ liệu, gắn cờ các định danh vi phạm các tiền tố đã thỏa thuận và đề xuất đổi tên. Nó cũng có thể tạo ra các tên nhất quán cho các biến mới dựa trên phạm vi và kiểu dữ liệu của chúng.

Không. lv_name và LV_NAME cùng đề cập đến một định danh. Chỉ các chuỗi ký tự trong dấu ngoặc đơn mới phân biệt chữ hoa chữ thường, vì vậy quy ước này tồn tại để dễ đọc hơn, chứ không phải vì trình biên dịch yêu cầu.

Tóm tắt bài viết này với: