Добавить список в Oracle SQL и построить граф

Мне нужно построить граф знакомств с помощью бд Oracle SQL. Как мне добавить общих друзей(common_friends) в таблицу функцией add_to_table, чтобы в дальнейшем построить граф с помощью библиотеки networkx?

import requests
import cx_Oracle

token = ''
version = 5.124
user_id = ''
source_uid = ''

def Friends():
    ids = []
    response = requests.get('https://api.vk.com/method/friends.get',
                                params={
                                    'access_token': token,
                                    'v': version,
                                    'user_id': user_id,
                                 })
    data = response.json()['response']['items']
    ids.extend(data)
    friends = (', '.join(map(str, data)))
    return friends

def Mutual():
    target_uids = Friends()
    response = requests.get('https://api.vk.com/method/friends.getMutual',
                                params={
                                    'access_token': token,
                                    'v': version,
                                    'source_uid': source_uid,
                                    'target_uids': target_uids
                                 })
    data = response.json()['response']
    return data

def add_to_table(Mutual):
    conn = cx_Oracle.connect(user='C##STUD1721', password='123', dsn=dsn_tns)
    cur = conn.cursor()
    for dic in Mutual:
        named_params = {'1': dic.get('id'), '2':dic.get('common_friends')}
        cur.execute("INSERT INTO Mutual (ID, common) VALUES (:1,:2)", named_params)
    cur.close()
    conn.commit()
    conn.close()


def create_table():
    conn = cx_Oracle.connect(user='C##STUD1721', password='123', dsn=dsn_tns)
    cur = conn.cursor()
    cur.execute("""CREATE TABLE Mutual
                (ID NUMBER(20) NOT NULL,
                common VARCHAR2(30 CHAR))""")
    cur.close()
    conn.commit()
    conn.close()

def drop_table():
    conn = cx_Oracle.connect(user='C##STUD1721', password='123', dsn=dsn_tns)
    cur = conn.cursor()
    try:
        cur.execute("DROP TABLE Mutual")
    except:
        return 0
    cur.close()
    conn.commit()
    conn.close()


cx_Oracle.init_oracle_client(lib_dir= "D:\instantclient_19_10")
dsn_tns = cx_Oracle.makedsn('localhost', '1521', service_name='orcl')

drop_table()
create_table()
add_to_table(Mutual())

Ответы (0 шт):