從表格中選擇數(shù)據(jù)
要從MySQL中的表格中選擇數(shù)據(jù),請使用"SELECT"語句:
示例選擇"customers"表格中的所有記錄,并顯示結(jié)果:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM customers")
myresult = mycursor.fetchall()
for x in myresult:
print(x)
注意:我們使用 fetchall()
方法,該方法從上次執(zhí)行的語句中獲取所有行。
選擇列
要僅選擇表格中的某些列,請使用"SELECT"語句,后跟列名:
示例僅選擇name和address列:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
mycursor.execute("SELECT name, address FROM customers")
myresult = mycursor.fetchall()
for x in myresult:
print(x)
使用 fetchone() 方法
如果您只對一行數(shù)據(jù)感興趣,可以使用 fetchone()
方法。
fetchone()
方法將返回結(jié)果的第一行:
示例僅獲取一行:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM customers")
myresult = mycursor.fetchone()
print(myresult)
這是您提供的內(nèi)容的Markdown排版,按照您的要求進行了整理。如果需要進一步的編輯或修改,請告訴我。
使用篩選條件選擇記錄
在從表格中選擇記錄時,您可以使用"WHERE"語句來篩選選擇的記錄:
示例選擇地址為"Park Lane 38"的記錄:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
sql = "SELECT * FROM customers WHERE address ='Park Lane 38'"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
通配符字符
您還可以選擇以給定字母或短語開頭、包含或以給定字母或短語結(jié)尾的記錄。
使用 %
來表示通配符字符:
示例選擇地址中包含單詞 "way" 的記錄:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
sql = "SELECT * FROM customers WHERE address LIKE '%way%'"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
防止SQL注入
當(dāng)查詢值由用戶提供時,應(yīng)該轉(zhuǎn)義這些值。
這是為了防止SQL注入,這是一種常見的網(wǎng)絡(luò)黑客技術(shù),可以破壞或濫用您的數(shù)據(jù)庫。
mysql.connector
模塊具有轉(zhuǎn)義查詢值的方法:
示例使用占位符 %s
方法轉(zhuǎn)義查詢值:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
sql = "SELECT * FROM customers WHERE address = %s"
adr = ("Yellow Garden 2", )
mycursor.execute(sql, adr)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
最后
為了方便其他設(shè)備和平臺的小伙伴觀看往期文章:公眾號搜索Let us Coding
,或者掃描下方二維碼,關(guān)注公眾號,即可獲取最新文章。
看完如果覺得有幫助,歡迎點贊、收藏和關(guān)注文章來源:http://www.zghlxwxcb.cn/news/detail-746092.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-746092.html
到了這里,關(guān)于Python MySQL 數(shù)據(jù)庫查詢:選擇數(shù)據(jù)、使用篩選條件、防止 SQL 注入的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!