Найти - Пользователи
Полная версия: psycopg2 работа с БД
Начало » Python для новичков » psycopg2 работа с БД
1
LavA
Прошу помощи
начал разбираться с БД, пытаюсь удалить таблицу из БД
 def delete_bd (bddel):
    con = None
    bddel = bddel
    try:
        con = psycopg2.connect(user='postgres', host='127.0.0.1', password='1')
        cursor = con.cursor()
        cursor.execute("SELECT datname FROM pg_database WHERE " + "datistemplate = false;")
        fetch = cursor.fetchall()
        dblist = [fetch[i][0] for i in range(len(fetch))]
        print('wwww', dblist)
        cursor.execute("DROP TABLE %s;" % bddel")
    except psycopg2.DatabaseError as e:
        print("ErrorZZ ", e)
    con.close()
bddel = 'w5'
delete_bd(bddel)
При этом fetchall() все видит:
wwww ‘postgres’, ‘s1’, ‘w2’, ‘w4’, ‘w3’, ‘w5’, ‘w6’
но выдает ошибку:
ErrorZZ table “w5” does not exist
Вроде простая задача - не могу разобраться где ошибка. СПС
LavA
Извиняюсь, это мертвый форум или здесь кто то бывает?
FishHook
LavA

1. Зайдите в консоль посгреса и выполните команду листинга таблиц. Результат покажите сюда.
2. Выполните запрос из питона БЕЗ строковых подставлений, просто “cursor.execute(”DROP TABLE w5"). Результат предъявите.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB