Загрузка...

Ботописание, SQL3 Python

Тема в разделе Python создана пользователем YungHefnerBitch 7 мар 2020. 396 просмотров

  1. YungHefnerBitch
    YungHefnerBitch Автор темы 7 мар 2020 Заблокирован(а) 0 15 фев 2020
    Как сделать так, чтобы юзер каждый раз не добавлялся в БД? Делал и проверки и всё что угодно, всеравно.. Помогите пожалуйста.
     
  2. asdfg298
    asdfg298 7 мар 2020 320 10 фев 2017
    Покажи реализацию регистрации у тебя
     
  3. Decoy4298
    Decoy4298 7 мар 2020 217 18 фев 2020
    Проверять его наличие в БД перед добавлением, логично ведь
     
  4. awnulled
    awnulled 7 мар 2020 6 28 фев 2017
    Эту проверку можно избежать, если в бд добавить уникальный индекс -
    query = "CREATE UNIQUE INDEX User ON table(columns)"
     
  5. renameduser_471445
    Код
    with self.connection:
    res = self.cursor.execute('SELECT * FROM users WHERE user = ?', (username,)).fetchall()
    if res == []:
    add user to db
    else:
    pass
     
  6. Delitel
    Delitel 9 мар 2020 198 4 фев 2018
    Код
    import sqlite3
    import telebot

    conn = sqlite3.connect("database.db")
    c = conn.cursor()

    c.execute('''CREATE TABLE IF NOT EXISTS users
    (user_id INTEGER,money INTEGER)''')
    conn.close()
    bot = telebot,TeleBot("TOKEN")

    @bot.message_handler(commands=["start"])
    def message_handler(message):
    conn = sqlite3.connect("database.db")
    c = conn.cursor()
    try: # ЕСЛИ ПОЯВИТСЯ ОШИБКА ЗНАЧИТ ТАКОЙ user_id УЖЕ ЕСТЬ И ПОВТОРНО СОЗДАВАТЬ НЕ НАДО
    result = c.execute(f"SELECT * FROM users WHERE user_id={message.chat.id}").fetchone()
    print(result[1])
    except:
    c.execute("INSERT INTO users VALUES(?,?)",(message.chat.id,0))
    conn.commit()
    conn.close()
     
  7. sesu
    sesu 9 мар 2020 Ты не умеешь писать код 114 17 ноя 2019
    Какой же кал все эти решения, для таких кодомакак есть готовые решения - orm.
     
  8. Delitel
    Delitel 9 мар 2020 198 4 фев 2018
    sesu, костыли куда веселее)
     
  9. j_rider
    j_rider 9 мар 2020 7 14 янв 2020
    Ну и в какой орм он сможет разобраться? sqlalchemy? Не смеши, он в ней запутается только открыв документацию. А вообще то он даже до документации не дойдет, без шансов.
     
  10. sesu
    sesu 9 мар 2020 Ты не умеешь писать код 114 17 ноя 2019
    Ну это всяко лучше чем писать запросы напрямую в синхронный sqllite
     
  11. NoneTypeObject
    сколько тебя вижу - ты только срёшь в темках какие все хуевые, а помочь не можешь. По твоему каждый новичок должен уметь всё сразу? Ты так и не скинул свой гит, кстати, котрйы у тебя просили
     
  12. sesu
    sesu 9 мар 2020 Ты не умеешь писать код 114 17 ноя 2019
    Я безликий наблюдатель, смотрю , говорю, и не вмешиваюсь.
     
  13. j_rider
    j_rider 10 мар 2020 7 14 янв 2020
    какое длинное определение слова тролль:peka:
     
Загрузка...
Top