#python #mysql #mysql-connector #mysql-connector-python
Вопрос:
Я новичок в python и MySQL, но я пытался запрограммировать схему, в которой есть пользовательская сущность с 2 подтипами: студент и преподаватель. Когда я использую эту функцию
def create_user(userName, email, Instructor):
mycursor = mydb.cursor()
generatedKey = uuid.uuid4()
id = generatedKey.bytes
generatedKey = uuid.uuid4()
PCID = generatedKey.bytes
sql = "INSERT INTO User(UserID,UserName, UserEmail) VALUES (%s, %s, %s)"
val = (id, userName, email)
mycursor.execute(sql, val)
mydb.commit()
if(Instructor):
sql = "INSERT INTO PostCreator(PCID, CreatorType) VALUES (%s, %s)"
val = (PCID, "Instructor")
mycursor.execute(sql, val)
mydb.commit()
sql = "INSERT INTO Instructor(InstructorId,PCID) VALUES (%s, %s)"
val = (id, PCID)
mycursor.execute(sql, val)
mydb.commit()
else:
sql = "INSERT INTO PostCreator(PCID, CreatorType) VALUES (%s, %s)"
val = (PCID, "Student")
mycursor.execute(sql, val)
mydb.commit()
sql = "INSERT INTO Student(StudentId,PCID) VALUES (%s, %s)"
val = (id, PCID)
mycursor.execute(sql, val)
mydb.commit()
print("Registered", userName)
чтобы создать студента, у меня нет никаких проблем. Однако, когда я пытаюсь создать инструктора, система либо отключается, либо создает инструктора, но следующие вызовы системы приводят к: InternalError: Непрочитанный результат, найденный после вставки новых данных.
Я понятия не имею, почему делать студента-это нормально, но преподаватели не работают. Их таблицы создаются одинаково в SQL.
Комментарии:
1. проверьте, нет ли ошибок в вашем коде
2. Есть идеи, где? Код вставки в основном одинаков для преподавателей и студентов, и их таблицы были настроены одинаково в SQL.
3. поскольку у вас есть проблемы с инструктором, сделайте dev.mysql.com/doc/connector-python/en/… и посмотрите, есть ли у mysl проблемы. Поскольку мы не знаем, как ваши таблицы не являются тем, как вы подключаете ssl ssh … ты должен помочь себе сам