Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何处理pymysql中两个唯一变量之间的错误?_Python_Mysql_Exception_Pymysql - Fatal编程技术网

Python 如何处理pymysql中两个唯一变量之间的错误?

Python 如何处理pymysql中两个唯一变量之间的错误?,python,mysql,exception,pymysql,Python,Mysql,Exception,Pymysql,我有使用pymysql库的python脚本,我想创建一个注册页面,该页面有三个值用户名、电子邮件和密码,即用户名和电子邮件是唯一的 import pymysql connection = pymysql.connect(############) #connected to a database cursor = pymysql.cursor() def sign_up( username, email, password): sql = 'INSERT INTO USER VALU

我有使用pymysql库的python脚本,我想创建一个注册页面,该页面有三个值用户名、电子邮件和密码,即用户名和电子邮件是唯一的

import pymysql
connection = pymysql.connect(############) #connected to a database
cursor = pymysql.cursor()

def sign_up( username, email, password):

    sql = 'INSERT INTO USER VALUES(%s, %s, %s)'
    try:
        cursor.execute(sql, (username, email, password))
    except Exception as e:
        connection.rollback()
        return False
        # Exception handling here

    else:
        connection.commit()
        return True
但当我输入以前使用过的电子邮件和用户名时,函数只返回False。 如何处理程序,它会告诉我哪一个是重复的用户名电子邮件。 例如,我有一个包含用户名=电子邮件的实例=a@gmail.com密码=123 在我的数据库中,当我再次使用username=a或电子邮件注册时=a@gmail.com结果相同(错误) 但我希望程序通过异常处理使这两个唯一值不同,并返回不同的内容


感谢阅读。

打印出您的异常,然后查看发生了什么。对于不同的情况,您将得到不同的异常