Получение истинного или ложного результата из базы данных, если имя пользователя уже существует

Я делаю небольшой проект, который использует базу данных. Когда пользователь создает учетную запись, мне нужно проверить базу данных, доступно ли имя пользователя.

Мой код выглядит примерно так:

db = mysql.connector.connect(
    host = "localhost",
    user = "user",
    password = "password",
    database = "users"

mycursor = db.cursor()


username = input("Username: ")

mycursor.execute("SELECT username FROM users")

for x in mycursor:
    if x == username:
        print(True)
    else:
        print(False)

Я видел несколько подобных вопросов, но они либо не связаны с Python, либо не работают у меня, либо я просто их не понимаю.

В вашем коде есть синтаксическая ошибка. Скобка никогда не закрывалась.

Lucenaposition 11.08.2024 07:17
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
5
1
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
import mysql.connector
    
# Connect to the database
db = mysql.connector.connect(
    host = "localhost",
    user = "user",
    password = "password",
    database = "users",
)

mycursor = db.cursor()
username = input("Username: ")

# Use SELECT and WHERE to check if it already exists
query = "SELECT username FROM users WHERE username = %s"
mycursor.execute(query, (username,))

# Fetch one result
result = mycursor.fetchone()

# Check if the result is None or not
if result:
    print(True)  # Username exists
else:
    print(False)  # Username does not exist

mycursor.close()
db.close()

Это может существенно отличаться от кода в вопросе. Это (при условии, что столбец нечувствителен к регистру, типичный для MySQL) будет искать, например, Fred или FRED, если задан fred.

ysth 11.08.2024 04:53

Другие вопросы по теме