Alternative way to read data from SQL server

import pandas as pd
from sqlalchemy.engine import create_engine
from sqlalchemy.engine import URL
from sqlalchemy.types import String, Date, DateTime
from sqlalchemy import text
import sqlalchemy as sa
import pyodbc
import oracledb
import math

table_name = 'payment__c'

conntarget = oracledb.connect(
    user="HR",
    password="**",
    dsn="192.168.178.6/orcl")

cursortarget = conntarget.cursor()
zoek_query = "select count(table_name) from user_tables where lower(table_name)=lower('" + table_name + "')"
print(zoek_query)
cursortarget.execute(zoek_query)
if cursortarget.fetchone()[0] >  0:
    cursortarget.execute("drop table " + table_name )

connection_string = "DRIVER={ODBC Driver 17 for SQL Server};SERVER=DESKTOP-8J58OIP;DATABASE=Speel;UID=sa;**"
connection_url = URL.create("mssql+pyodbc", query={"odbc_connect": connection_string})
engine = create_engine(connection_url)
with engine.begin() as conn:
    df = pd.read_sql_query(sa.text("SELECT * FROM Rapportage." + table_name), conn)


sql_script = 'CREATE TABLE ' + table_name + ' (' \
+ '"ID" CLOB NULL, ' \
+ '"Person_ID__c" CLOB NULL, ' \
+ '"Indication_Processed__c" CLOB NULL, ' \
+ '"CreatedById" CLOB NULL, ' \
+ '"LastModifiedById" CLOB NULL, ' \
+ '"CreatedDate" CLOB NULL, ' \
+ '"LastModifiedDate" CLOB NULL, ' \
+ '"Provider_ID__c" CLOB NULL ' \
+ ')'
print(sql_script)
#query = text(sql_script)
# Execute the SQL script
cursortarget.execute(sql_script)

df.info()
row_count = len(df)
nmbr_cycles = math.floor(row_count / 100000) + 1
print('aantal cycles ' + str(nmbr_cycles))

for index, row in df.iterrows():
    cursortarget.execute('INSERT INTO ' + table_name + '("ID", "Person_ID__c", "Indication_Processed__c", "CreatedById", "LastModifiedById", "CreatedDate", "LastModifiedDate", "Provider_ID__c") VALUES (:1, :2, :3, :4, :5, :6, :7, :8)', tuple(row))
# Commit changes to Oracle database
    if index % 100000 == 0:
        print(str(index) + ' Rijen gelezen')
    if index % 1000 == 0:
        conntarget.commit()
conntarget.commit()

cursortarget.close()

print('*******Prog geeindigd*******')

Door tom