Oracle
 sql >> база данни >  >> RDS >> Oracle

Как да извика функция Oracle в Python?

В този урок ще научите как да извикате функцията на Oracle в Python. Давам пример с помощта на cx_Oracle library callfunc функция в програмата Python. Следват подробностите за синтаксиса и примерните програми.

Синтаксис на функцията CX_Oracle callfunc

cursor.callfunc('oracle_function_name', variable_to_hold_return_value, [argument_1, argument_2, ...])

Пример за функция на база данни на Oracle

Следната функция на Oracle ще приеме два числови аргумента, за да изчисли процента на първо число по второ число.

СЪЗДАДЕТЕ ИЛИ ЗАМЕНЕТЕ ФУНКЦИЯ calc_percentage (p_1 В БРОЙ, p_2 В БРОЙ)ВЪРНЕТЕ NUMBERISn_pct NUMBER :=0;BEGINАКО p_1 НЕ Е NULLTHENn_pct :=(p_1 * p_2) / 100;END IF;t/RETURNn;END_pc;END_pc; /предварително> 

Пример за извикване на Oracle функция в Python

Програмата на Python по-долу ще извика горната функция на Oracle, като предаде n_1 като първи параметър и n_2 като втори параметър. Също така променливата n_pct Number се използва за задържане на връщаната стойност от функция.

import cx_Oraclecon =cx_Oracle.connect('scott/tiger@localhost/orcl')cur =con.cursor()n_pct =cur.var(cx_Oracle.NUMBER)n_1 =80n_2 =20cur.callfunc('calc_percentage  ', n_pct , [n_1 , n_2 ])print (str(n_2)+"%", " Процент от ", n_1, " е:", n_pct.getvalue())cur.close()con.close()

Изход

20% процента от 80 е:16.0

Вижте също:

  • Как да извика съхранена процедура на Oracle в 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. Функция за разделяне в Oracle на стойности, разделени със запетая, с автоматична последователност

  2. ORA-04021:възникна изчакване при изчакване за заключване на обекта

  3. Как мога да комбинирам няколко реда в списък, разделен със запетая в Oracle?

  4. Пример за израз на Oracle FOR LOOP SELECT

  5. LISTAGG в Oracle за връщане на различни стойности