使用 ORDER BY 進行排序 使用 ORDER BY 語句按升序或降序對結果進行排序。 ORDER BY 關鍵字預設按升序排序。要按降序排序結果,使用 DESC 關鍵字。 示例按名稱按字母順序排序結果: import mysql.connector mydb = mysql.connector. ...
使用 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, "條記錄已刪除")
最後
為了方便其他設備和平臺的小伙伴觀看往期文章:公眾號搜索Let us Coding
,或者掃描下方二維碼,關註公眾號,即可獲取最新文章。
看完如果覺得有幫助,歡迎點贊、收藏和關註