首页 > 解决方案 > 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")

 %> 

标签: pythonmysql

解决方案


推荐阅读