커서 저장 프로 시저 cursor.callproc()을 호출하려고 할 때 몇 가지 문제가 발생했습니다. 복수의 입력 및 출력 매개 변수가있을 때, 거기에 아무 문제가 없었다 모든 것을 다음과 같이 작동합니다 : 나는 5 입/출력 매개 변수를 다음과 같이 MySQL의에서 절차를 만들어 : 파이썬에서python에서 cursor.callproc()을 사용하여 MySQL 저장 프로 시저 호출
create procedure enrollclass(in yeartime int, in quartertime char(20), in stid char(20), in course_no char(20), out result int)
및 호출 절차 같은 것을 사용 이 :
arg2 = ('2016', 'Q2', info[0][0], course_no, 0)
ac = cursor.callproc('enrollclass',arg2)
이것은 잘 동작합니다. 그러나,이 같은 (NO 출력 매개 변수) 하나 개의 입력 매개 변수와 함께 다른 프로 시저를 호출하는 경우 :
arg3 = ('INFO1101')
cursor.callproc('prerequisite', arg3)
다음
시스템이 나에게 오류를 제공 보관이 줄을 사용
create procedure prerequisite(in course_no char(20))
및 절차라고 메시지 'args는 시퀀스 여야합니다'. 시퀀스를 형성하는 다른 인수가 없으므로 어떻게 수정해야할지 모르겠습니다. 누군가 여기서 무슨 일이 일어 났는지 말해 줄래? 감사!
에로, 쉼표를 추가 할 필요가 튜플
대신 괄호의() 사용자 대괄호 []와 그것을 작동합니다, 단일 요소를 만듭니다. – PerunSS