MySQL 使用 ORDER BY 排序和 DELETE 删除记录的操作过程
作者:小万哥
这篇文章主要介绍了MySQL 使用 ORDER BY 排序和 DELETE 删除记录的操作过程,即数据库查询与数据操作,本文通过示例代码给大家介绍的非常详细,需要的朋友参考下吧
使用 ORDER BY 进行排序
使用 ORDER BY
语句按升序或降序对结果进行排序。
ORDER BY
关键字默认按升序排序。要按降序排序结果,使用 DESC
关键字。
示例按名称按字母顺序排序结果:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers ORDER BY name" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x)
ORDER BY DESC
使用 DESC
关键字以降序排序结果。
示例按名称以字母逆序排序结果:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers ORDER BY name DESC" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x)
删除记录
您可以使用"DELETE FROM"语句从现有表格中删除记录:
示例删除地址为"Mountain 21"的记录:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "DELETE FROM customers WHERE address = 'Mountain 21'" mycursor.execute(sql) mydb.commit() print(mycursor.rowcount, "条记录已删除")
重要提示:请注意语句 mydb.commit()
。这是必需的,以使更改生效,否则不会对表格进行更改。
请注意DELETE语法中的WHERE子句:WHERE子句指定应删除哪些记录。如果省略WHERE子句,将删除所有记录!
防止SQL注入
通常认为,转义任何查询的值都是一种良好的做法,甚至在删除语句中也是如此。
这是为了防止SQL注入,这是一种常见的网络黑客技术,可以破坏或滥用您的数据库。
mysql.connector
模块使用占位符 %s
在删除语句中转义值:
示例使用占位符 %s
方法转义值:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "DELETE FROM customers WHERE address = %s" adr = ("Yellow Garden 2", ) mycursor.execute(sql, adr) mydb.commit() print(mycursor.rowcount, "条记录已删除")
到此这篇关于MySQL 数据库查询与数据操作:使用 ORDER BY 排序和 DELETE 删除记录的文章就介绍到这了,更多相关mysql ORDER BY 排序和 DELETE 删除记录内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!