Programming/dialogflow / / 2019. 9. 17. 06:31

dialogflow webhook oracle 연동 방법

반응형

 

1. 파이썬 oracle 64bit 확인하기

 

파이썬 64bit oracle 64bit 여야 연동이 가능합니다.

 

파이썬 64bit 확인 방법

 

명령어: python path 등록되어 있다면 실행창(window + r) 후 

python

import platform

print(platform.architecture())

입력하시면 파이썬 bit 알 수 있습니다.

 

oracle 64bit 확인 방법

 

명령어:

tnsping

 

 

 

저는 파이썬 32bit  oracle 64bit 이기 때문에 파이썬을 64bit로 다시 설치해야 합니다.

Windows x86-64 executable installer

 

 

2. 파이썬 cx_Oracle 설치

 

실행창 접속 후 

명령어 : pip install cx_Oracle

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import urllib
import json
import os
import cx_Oracle
from flask import Flask, request, make_response, jsonify
# initialize the flask app
app = Flask(__name__)
 
# default route
@app.route('/')
def index():
    return 'Hello World!'
# create a route for webhook
@app.route('/webhook', methods=['GET''POST'])
def webhook():
    req = request.get_json(force=True)
    action = req['queryResult']['action']
    connection = cx_Oracle.connect("c##아이디/비밀번호@localhost:1521/orcl")
    cursor = connection.cursor()
    print(cursor.execute("select no from board where no = 1"))
    a=cursor.fetchall()
#action = req.get('queryResult').get('action')
    if action == 'interest':
        pizza_name = req['queryResult']['parameters']['bank-name']
        #answer = process_pizza_info(pizza_name)
        print(pizza_name)
 
    else:
        return "Aaa"
    res = {'speech':"aaa"}
 
    return {'fulfillmentText': a}
 
# run the app
if __name__ == '__main__':
   app.run()
cs

oracle select  하시면 데이터 타입이 tuple입니다.

이걸 일반적으로 string으로 사용하시려면

b = str(a[0]) 이런 식으로 string으로 바꾸셔서 사용하시면 됩니다.

 

추가적으로 

sql = "select no from board where no = '%s'%(변수)

이렇게 사용하시면 python에서 지정한 변수를 select 하실 수 있습니다.

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유