Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm thế nào để gọi hàm Oracle trong Python?

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?
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thêm chỉ báo thứ tự cho một ngày trong Oracle

  2. UNPIVOT trên một số cột không xác định

  3. Hàm LPAD () trong Oracle

  4. Tạo hoặc mô phỏng mảng hai chiều trong PL / SQL

  5. Nhà cung cấp Oracle cho Oledb bị thiếu trong VS 2015 Shell