Подскажите пожалуйста как подправить скрипт?
Он должен проверить, существует ли такая таблица или столбец в таблице в БД, и если нет, тогда запишет данные, а если есть то скажет "Дубль", но при этом не вылетит из бд
import psycopg2
from psycopg2 import Error
try:
# Подключиться к существующей базе данных
connection = psycopg2.connect(user="postgres",
# пароль, который указали при установке PostgreSQL
password="*****",
host="127.0.0.1",
port="5432",
database="result_test_parsing")
# Создайте курсор для выполнения операций с базой данных
# для проверки на дубль новой таблицы
cursor = connection.cursor()
checkTableExists = """SELECT table_name
FROM information_schema.tables
WHERE table_schema = 'databasename'
AND table_name = 'tablename';"""
cursor.execute(checkTableExists)
connection.commit()
# для создания новой таблицы
create_table_query = '''CREATE TABLE value_result
(TESTID TEXT PRIMARY KEY NOT NULL); '''
# Выполнение команды: это создает новую таблицу
cursor.execute(create_table_query)
connection.commit()
print("Таблица успешно создана в PostgreSQL")
#SQL-запрос для вставки записей в таблицу базы данных
cursor.execute(
"INSERT INTO VALUE_RESULT (TESTID) VALUES ('fio-example')"
)
connection.commit()
print('Запись успешно вставлена')
except (Exception, Error) as error:
print("Ошибка при работе с PostgreSQL", error)
finally:
if connection:
cursor.close()
connection.close()
print("Соединение с PostgreSQL закрыто")