0
0 комментариев

Работаю с ботом для Telegram, деплой и БД делаю на базе Heroku. Имею следующий код создания таблицы и последующего выдергивания столбца из нее:

conn = psycopg2.connect(database=db_info.get('NAME'), user=db_info.get('USER'), password=db_info.get('PASSWORD'), host=db_info.get('HOST'), port=db_info.get('PORT'))
    c = conn.cursor()
    kom = "CREATE TABLE IF NOT EXISTS ch_{} (id INTEGER PRIMARY KEY, nickname   VARCHAR)".format(chat_id)
    c.execute(kom)
    c.close()
    conn.close()
 
@bot.message_handler(commands=['register'])
def reg_user(message):
    chat_id = str(message.chat.id)[1:]
    conn = psycopg2.connect(database=db_info.get('NAME'), user=db_info.get('USER'), password=db_info.get('PASSWORD'), host=db_info.get('HOST'), port=db_info.get('PORT'))
    c = conn.cursor()
    try:
        kom = "SELECT nickname FROM ch_{}".format(chat_id)
        curs = c.execute(kom)
        data = curs.fetchall()

Таблица не создается, о чем говорит traceback

File "D:/Programming/python/mason4pdabot/UselessBot.py", line 32, in reg_user
    curs = c.execute(kom)
psycopg2.ProgrammingError: relation "ch_33578100" does not exist
LINE 1: SELECT nickname FROM ch_33578100

Хотя предварительная запись таблицы никаких ошибок не возвращает. Делаю вывод что не создается таблица. Как узнать по какой причине/где можно посмотреть логи? Или в чем может быть проблема?


Добавить комментарий