中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用pymysql模塊

發布時間:2021-03-18 16:24:54 來源:億速云 閱讀:129 作者:Leah 欄目:開發技術

如何使用pymysql模塊?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

pymysql的基本使用:

import pymysql

conn = pymysql.connect(
  user = 'root',
  password = '123',
  host = '127.0.0.1', # ip地址
  port = 3306,    # 端口
  charset = 'utf8',
  database = 'day36_1'
)
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)# 產生游標對象
# cursor=pymysql.cursors.DictCursor 將查詢出來的結果制成字典的形式返回
sql = "select * from userinto"
res = cursor.execute(sql) #執行sql語句

res = cursor.fetchone() # 打印一條數據
res = cursor.fetchall() # 可以打印里面的所有數據
res = cursor.fetchmany(2)  #制定獲取幾條數據,如果數字超了也不報錯

print(res)

cursor.scroll(2, 'relative') #相對移動 , 基于指針所在位置, 往后偏移

cursor.scroll(3, 'absolute') #絕對移動,基于起始位置往后偏移

print(cursor.fetchall())

我們可以通過python導入模塊來連接數據庫,進行登陸注冊功能,在使用時sql會遇到注入問題

sql注入問題 利用特殊符號和注釋語法 巧妙的繞過真正的sql校驗,是用戶數據不安全
關鍵性的數據 不要自己手動去拼接 而是交由execute幫你去做拼接

import pymysql

conn = pymysql.connect(
  user = 'root' ,
  password = '123',
  host = '127.0.0.1',
  port = 3306,
  database = 'day36_1',
  charset = 'utf8'
)
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

#獲取用戶名和密碼,然后取數據庫中校驗
username = input('username>>>:').strip()
password = input('password>>>:').strip()
sql = "select * from userinto where name=%s and password=%s"
print(sql)
cursor.execute(sql, (username, password)) #交由execute幫你去做拼接,解決注入問題
res = cursor.fetchall()

if res:
  print(res)
else:
  print('username or password error!')

我們也可以利用pycharm來操作數據庫文件的增刪改查!

針對增 刪 改操作 執行重要程度偏高

你如果真想操作 必須有一步確認操作(commit)

import pymysql
conn = pymysql.connect(
  user = 'root',
  passwd = '123456',
  db = 'day36',
  host = '127.0.0.1',
  port = 3306,
  charset = 'utf8',
  autocommit = True # 自動提交確認
)
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
# #查: 獲取用戶輸入的用戶名和密碼 然后取數據庫中校驗
# username = input('username>>>:').strip()
# password = input('password>>>:').strip()
# # sql = "select * from userinfo where name='%s' and password= '%s'"%(username,password)
# sql = "select * from userinfo where name=%s and password= %s"
# print(sql)

# 增
sql = "insert into userinfo(name,password,dep_id) values('jason',789,1)"
# 改
# sql = "update userinfo set name='egondsb' where id = 6"
# 刪除
# sql = "delete from userinfo where id= 1"
res = cursor.execute(sql)
# conn.commit() # 確認當前操作 真正的同步到數據庫
print(res)

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宣威市| 武功县| 永平县| 府谷县| 林西县| 临猗县| 砚山县| 临沭县| 磴口县| 开平市| 伊宁市| 天峨县| 大港区| 博湖县| 滦平县| 清丰县| 临高县| 铁力市| 万载县| 南雄市| 东莞市| 尼玛县| 阳曲县| 大洼县| 连江县| 宜丰县| 行唐县| 久治县| 勐海县| 中江县| 贵溪市| 北辰区| 治多县| 漯河市| 丰镇市| 山丹县| 宜都市| 澎湖县| 揭东县| 都安| 仪陇县|