开始 安装MySQL驱动pythonmpipinstallmysqlconnectorpython 测试MySQL连接器importmysql。connector 测试MySQL连接importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword)print(mydb)创建数据库importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword)mycursormydb。cursor()mycursor。execute(CREATEDATABASEmydatabase)创建表格importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()mycursor。execute(CREATETABLEcustomers(nameVARCHAR(255),addressVARCHAR(255)))插入数据importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlINSERTINTOcustomers(name,address)VALUES(s,s)val(John,Highway21)mycursor。execute(sql,val)mydb。commit()print(mycursor。rowcount,recordinserted。) 重要!。注意这个语句:mydb。commit()。它是进行修改的必要条件,否则就不会对表进行修改。 插入多行importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlINSERTINTOcustomers(name,address)VALUES(s,s)val〔(Peter,Lowstreet4),(Amy,Applest652),(Hannah,Mountain21),(Michael,Valley345),(Sandy,Oceanblvd2),(Betty,GreenGrass1),(Richard,Skyst331),(Susan,Oneway98),(Vicky,YellowGarden2),(Ben,ParkLane38),(William,Centralst954),(Chuck,MainRoad989),(Viola,Sideway1633)〕mycursor。executemany(sql,val)mydb。commit()print(mycursor。rowcount,wasinserted。) 获取插入的IDimportmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlINSERTINTOcustomers(name,address)VALUES(s,s)val(Michelle,BlueVillage)mycursor。execute(sql,val)mydb。commit()print(1recordinserted,ID:,mycursor。lastrowid)查询importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()mycursor。execute(SELECTFROMcustomers)myresultmycursor。fetchall()forxinmyresult:print(x) 从表格中选择importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()mycursor。execute(SELECTFROMcustomers)myresultmycursor。fetchall()forxinmyresult:print(x) 注意:我们使用fetchall()方法,它从最后执行的语句中获取所有行。 选择列importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()mycursor。execute(SELECTname,addressFROMcustomers)myresultmycursor。fetchall()forxinmyresult:print(x) 如果只想查询一条数据,可以使用fetchone()方法。importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()mycursor。execute(SELECTFROMcustomers)myresultmycursor。fetchone()print(myresult)Where条件 使用筛选器选择importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlSELECTFROMcustomersWHEREaddressParkLane38mycursor。execute(sql)myresultmycursor。fetchall()forxinmyresult:print(x) 通配符importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlSELECTFROMcustomersWHEREaddressLIKEwaymycursor。execute(sql)myresultmycursor。fetchall()forxinmyresult:print(x)防止SQL注入importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlSELECTFROMcustomersWHEREaddresssadr(YellowGarden2,)mycursor。execute(sql,adr)myresultmycursor。fetchall()forxinmyresult:print(x)OrderBy 对结果进行排序importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlSELECTFROMcustomersORDERBYnamemycursor。execute(sql)myresultmycursor。fetchall()forxinmyresult:print(x) 使用DESC关键字对结果进行降序排序。importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlSELECTFROMcustomersORDERBYnameDESCmycursor。execute(sql)myresultmycursor。fetchall()forxinmyresult:print(x)删除记录importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlDELETEFROMcustomersWHEREaddressMountain21mycursor。execute(sql)mydb。commit()print(mycursor。rowcount,record(s)deleted) 防止SQL注入importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlDELETEFROMcustomersWHEREaddresssadr(YellowGarden2,)mycursor。execute(sql,adr)mydb。commit()print(mycursor。rowcount,record(s)deleted)删除表importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlDROPTABLEcustomersmycursor。execute(sql)更新数据importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlUPDATEcustomersSETaddressCanyon123WHEREaddressValley345mycursor。execute(sql)mydb。commit()print(mycursor。rowcount,record(s)affected) 防止SQL注入importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlUPDATEcustomersSETaddresssWHEREaddresssval(Valley345,Canyon123)mycursor。execute(sql,val)mydb。commit()print(mycursor。rowcount,record(s)affected)限制结果importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()mycursor。execute(SELECTFROMcustomersLIMIT5)myresultmycursor。fetchall()forxinmyresult:print(x) 从另一个位置开始importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()mycursor。execute(SELECTFROMcustomersLIMIT5OFFSET2)myresultmycursor。fetchall()forxinmyresult:print(x)连接两张或更多数据表users表{id:1,name:John,fav:154},{id:2,name:Peter,fav:154},{id:3,name:Amy,fav:155},{id:4,name:Hannah,fav:},{id:5,name:Michael,fav:}products{id:154,name:ChocolateHeaven},{id:155,name:TastyLemons},{id:156,name:VanillaDreams}importmysql。connectormydbmysql。connector。connect(hostlocalhost,useryourusername,passwordyourpassword,databasemydatabase)mycursormydb。cursor()sqlSELECTusers。nameASuser,products。nameASfavoriteFROMusersINNERJOINproductsONusers。favproducts。idmycursor。execute(sql)myresultmycursor。fetchall()forxinmyresult:print(x)结束 MySQL的基本操作就是这样子了。