Trong hướng dẫn này, bạn sẽ học cách gọi hàm Oracle trong Python. Tôi đang đưa ra một ví dụ bằng cách sử dụng cx_Oracle thư viện callfunc trong chương trình Python. Sau đây là chi tiết cú pháp và các chương trình mẫu.
Cú pháp hàm callfunc CX_Oracle
cursor.callfunc('oracle_function_name', variable_to_hold_return_value, [argument_1, argument_2, ...])
Ví dụ về hàm cơ sở dữ liệu Oracle
Hàm Oracle sau sẽ nhận hai đối số là số để tính toán tỷ lệ phần trăm của số đầu tiên với số thứ hai.
CREATE OR REPLACE FUNCTION calc_percentage (p_1 IN NUMBER, p_2 IN NUMBER) RETURN NUMBER IS n_pct NUMBER := 0; BEGIN IF p_1 IS NOT NULL THEN n_pct := (p_1 * p_2) / 100; END IF; RETURN n_pct; END calc_percentage; /
Ví dụ để gọi hàm Oracle trong Python
Chương trình Python bên dưới sẽ gọi hàm Oracle ở trên bằng cách chuyển n_1 làm tham số đầu tiên và n_2 làm tham số thứ hai. Ngoài ra, biến số n_pct được sử dụng để giữ giá trị trả về theo hàm.
import cx_Oracle con = cx_Oracle.connect('scott/tiger@localhost/orcl') cur = con.cursor() n_pct = cur.var(cx_Oracle.NUMBER) n_1 = 80 n_2 = 20 cur.callfunc('calc_percentage', n_pct, [n_1, n_2]) print (str(n_2)+"%", " Percent of ", n_1, " is: ", n_pct.getvalue()) cur.close() con.close()
Đầu ra
20% Percent of 80 is: 16.0
Xem thêm:
- Cách gọi thủ tục lưu trữ Oracle bằng Python?