python - DatabaseError:1366(HY000):不正确的整数值:第 1 行的列“STU_SCHOOLID”的“STUSCHOOLID 错误”
问题描述
我正在从 Web 表单接收数据。我已经删除了主机、用户、密码和数据库信息。每次我收到此错误时:
DatabaseError:1366(HY000):不正确的整数值:第 1 行的列“STU_SCHOOLID”的“STUSCHOOLID 错误”。
如果我把STUSCHOOLID = int(form.get("STUSCHOOLID", "Error in STUDENT SCHOOL ID")) as int
它说
ValueError: int() 以 10 为底的无效文字:'BOOK ISBN 中的错误'</p>
另外,如果我按照int(float(form.get....
它说的那样说
ValueError:无法将字符串转换为浮点数:BOOK ISBN 中的错误。
<%
import mysql.connector
cnx = mysql.connector.connect(host="", user="", password="", database="")
cursor = cnx.cursor()
STUSCHOOLID = form.get("STUSCHOOLID", "Error in STUDENT SCHOOL ID")
STUFNAME = form.get("STUFNAME", "Error in STUDENT FIRST NAME")
STULNAME = form.get("STULNAME", "Error in STUDENT LAST NAME")
STUGENDER = form.get("STUGENDER", "Error in STUDENT GENDER")
STUAGE = form.get("STUAGE", "Error in STUDENT AGE")
STUYOS = form.get("STUYOS", "Error in STUDENT YEAR OF STUDY")
BOOKISBN = form.get("BOOKISBN", "Error in BOOK ISBN")
BOOKNAME = form.get("BOOKNAME", "Error in BOOK NAME")
AUTHORID = form.get("AUTHORID", "Error in AUTHOR ID")
BOOKPUBLISHER = form.get("BOOKPUBLISHER", "Error in BOOK PUBLISHER")
DATEPUBLISHED = form.get("DATEPUBLISHED", "Error in DATE PUBLISHED")
STUSCHOOLID = str(STUSCHOOLID)
STUFNAME = str(STUFNAME)
STULNAME = str(STULNAME)
STUGENDER = str(STUGENDER)
STUAGE = str(STUAGE)
STUYOS = str(STUYOS)
BOOKISBN = str(BOOKISBN)
BOOKNAME = str(BOOKNAME)
AUTHORID = str(AUTHORID)
BOOKPUBLISHER = str(BOOKPUBLISHER)
DATEPUBLISHED = str(DATEPUBLISHED)
insert1= "INSERT INTO STUDENT values (%s, %s, %s, %s, %s, %s);"
values1 = (STUSCHOOLID, STUFNAME, STULNAME, STUGENDER, STUAGE, STUYOS)
cursor.execute(insert1, values1)
insert2 = "INSERT INTO BOOK values (%s, %s, %s, %s, %s);"
values2 = (BOOKISBN, BOOKNAME, AUTHORID, BOOKPUBLISHER, DATEPUBLISHED)
cursor.execute(insert2, values2)
cnx.commit()
cursor.close()
cnx.close()
req.write("Records have been added to tables STUDENT & BOOK")
%>