Как правильно вставить запись с Python колбу в MySQL (Ошибка: 1045 с использованием пароля: НЕТ) - PullRequest
0 голосов
/ 27 июня 2019

Я пытаюсь вставить запись из Python, используя колбу, но при заполнении формы и отправке ее в функцию (def agrega) выведите мне сообщение об ошибке:

MySQLdb._exceptions.OperationalError: (1045, "Access denied for user 'Artron' @ 'localhost' (using password: NO) ") 

Я не знаю, почему (У пользователя правильный пароль и все его привилегии).

Мой код:

from flask import Flask, render_template, request
from flask_mysqldb import MySQL 
app = Flask(__name__)
app.config['MySQL_HOST']='localhost'
app.config['MySQL_USER']='arturo'
app.config['MySQL_PASSWORD']='Oro_2019'
app.config['MySQL_DB']='programas'
mysql = MySQL(app)
@app.route('/')
def Index():
    return render_template('index.html')

@app.route('/add_contact', methods=['POST'])
def agrega():
    if request.method == 'POST':
        categoria = request.form['categoria']
        nombre = request.form['nombre']
        direccion = request.form['direccion']
        cur = mysql.connection.cursor()
        cur.execute('INSERT INTO prog (categoria,nombre,direccion)VALUES (%s,%s,%s)',
        (categoria,nombre,direccion))
        mysql.connection.commit
        return 'received'
@app.route('/edit')
def edita():
    return 'Editar Contacto'
@app.route('/delete')
def elimina():
    return ("Elimina Contacto")
if __name__ == "__main__":
    app.run(port = 3000, debug = True)

1 Ответ

0 голосов
/ 27 июня 2019

Я предполагаю, что у вас также есть и MySQL-верстак с сервером? Если это так, войдите в базу данных с помощью Arturo и паролем - здесь вы можете столкнуться с ошибкой (что будет означать, что вы не предоставили права правильно).

Также попробуйте пароль без заглавной буквы O

Если вам удастся войти в систему, запустите:

SHOW GRANTS;
SHOW GRANTS FOR CURRENT_USER;

и пришлите нам результаты.

ТАКЖЕ НИКОГДА НЕ ИСПОЛЬЗУЙТЕ настоящие учетные данные здесь только из соображений безопасности и надлежащей практики

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