我的代码:
import mysql.connector class product(): def __init__(self,proName): self.proName=proName def addproduct(self,proPrice,proNum):#添加商品 mydb=mysql.connector.connect( host='localhost', user='root', passwd='123456', database='platform' ) mycursor=mydb.cursor() sql_select='select proName from product' mycursor.execute(sql_select) proNames=mycursor.fetchall() result_name=[] for result in proNames: result_name.append(result[0]) try: if self.proName in result_name: print('商品已经存在') else: if self.proName=='' or proNum=='' or proPrice=='': print('商品名称/商品价格/商品数量任何一个不得为空') elif proPrice<0 or isinstance(proPrice,int)==False: print('价格只能为大于0的整数') elif proNum<0 or isinstance(proNum,int)==False: print('数量只能为大于0的整数') else: sql_insert='insert into product(proName,proPrice,proNum) VALUES(%s,%s,%s)' pro_val=(self.proName,proPrice,proNum) mycursor.execute(sql_insert,pro_val) print('添加成功,有',mycursor.rowcount,'条数据插入成功') except Exception as message: print(message,'出错了,检查输入参数类型是否正确') product('华为X9').addproduct(999,1182)
执行后无报错信息,但是数据库无这条数据,查了下代码发现少写了一个提交数据库操作的代码,加上mydb.commit()后无报错
如: