我能很好地连接到我的数据库,总线,不知怎么的,我把它的书写部分搞砸了。
这是我的代码:
from tkinter import *
from tkinter import messagebox
import mysql.connector
from mysql.connector import MySQLConnection, Error
db = mysql.connector.connect(
host="localhost",
user="root",
passwd="oliver1989",
database="pruebas_mysql"
)
def insert_newuser():
cursor = db.cursor()
add_usuario = """INSERT INTO reg_us(nombre, paterno, materno, usuario, contra)"
"VALUES(%s, %s, %s, %s, %s)"""% (new_nombre.get(), new_paterno.get(), new_materno.get(), new_usuario.get(), new_contraseña.get())
#data_registro = (new_nombre.get(), new_paterno.get(), new_materno.get(), new_usuario.get(), new_contraseña.get())
cursor.execute(add_usuario)
db.commit()
def registro_usuario():
screen1=Toplevel(screen)
screen1.geometry("280x400")
screen1.config(bg="#5EC659")
screen.title("Registro")
global new_nombre
new_nombre=StringVar()
global new_paterno
new_paterno=StringVar()
global new_materno
new_materno=StringVar()
global new_usuario
new_usuario=StringVar()
global new_contraseña
new_contraseña=StringVar()
global con_contraseña
con_contraseña=StringVar()
Label(screen1, text="Por favor llena este formulario", font=("consolas", 10), bg="#5EC659", fg="white").pack()
Label(screen1, text="", bg="#5EC659").pack()
Label(screen1, text="Nombre / s", font=("consolas", 10), bg="#5EC659", fg="white").pack()
Entry(screen1, textvariable=new_nombre).pack()
Label(screen1, text="Apellido paterno", font=("consolas", 10), bg="#5EC659", fg="white").pack()
Entry(screen1, textvariable=new_paterno).pack()
Label(screen1, text="Apellido Materno", font=("consolas", 10), bg="#5EC659", fg="white").pack()
Entry(screen1, textvariable=new_materno).pack()
Label(screen1, text="Usuario", font=("consolas", 10), bg="#5EC659", fg="white").pack()
Entry(screen1, textvariable=new_usuario).pack()
Label(screen1, text="Contraseña", font=("consolas", 10), bg="#5EC659", fg="white").pack()
Entry(screen1, textvariable=new_contraseña).pack()
Label(screen1, text="Confirma la contraseña", font=("consolas", 10), bg="#5EC659", fg="white").pack()
Entry(screen1, textvariable=con_contraseña).pack()
Label(screen1, text="", bg="#5EC659").pack()
Button(screen1, text=" Registrar", height="1", width="10", font=("consolas", 11), command=insert_newuser).pack()
def check_udb():
print("hola")
def main_screen():
global screen
screen = Tk()
screen.geometry("280x300")
screen.config(bg="#5EC659")
screen.title("Planeaciones 1.0")
global usuario
global contraseña
usuario = StringVar()
contraseña =StringVar()
Label(text="Bienvenido", font=("consolas", 15), bg="#5EC659", fg="white").pack()
Label(text="", bg="#5EC659").pack()
Label(text="Usuario", bg="#5EC659", fg="white", font=("consolas", 13)).pack()
Entry(screen, textvariable = usuario).pack()
Label(text="Contraseña", bg="#5EC659", fg="white", font=("consolas", 13)).pack()
Entry(screen, textvariable = contraseña).pack()
Label(text="", bg="#5EC659").pack()
Button(text="Ingresar", height="1", width="8", font=("consolas", 10), fg="#1E1E1E", command=check_udb).pack()
Label(text="¿No cuentas con usuario?", bg="#5EC659", fg="white").pack()
Label(text="¡Facil!, registra tu nuevo usuario.", bg="#5EC659", fg="white").pack()
Button(text="Registrarse", height="1", width="11", font=("consolas", 10), fg="#1E1E1E", command=registro_usuario).pack()
screen.mainloop()
main_screen()
这是控制台中出现的错误:
“C:\用户\ICATVER 03\PycharmProjects\pruebas
mysqldb\venv\Scripts\python.exe“”C:/Users/ICATVER
03/PycharmProjects/pruebas mysqldb/index.py“Tkinter中的异常
回调回溯(最近一次调用最后一次):文件“C:\用户\ictor
03\AppData\Local\Programs\Python\Python37-32\lib\tkinter_uuinit_uu.py“,
1705号线,输入
呼叫
插入新用户
mysqldb\venv\lib\site packages\mysql\connector\cursor.py“,第551行,
执行中
self._handle_result(self._connection.cmd_query(stmt))文件“C:\Users\ICATVER 03\PycharmProjects\pruebas
mysqldb\venv\lib\site packages\mysql\connector\connection.py“,行
490,在命令查询中
result=self._handle_result(self._send_cmd(ServerCmd.QUERY,QUERY))文件“C:\用户\ICATVER 03\PycharmProjects\pruebas
mysqldb\venv\lib\site packages\mysql\connector\connection.py“,行
395,在处理结果中
SQL语法错误;请查看与
MySQL服务器的正确语法版本使用near“
第1行的“值(asdf、asdf、asdf、asdf、asdf)”