import pymysql # 創建連接對象 conn = pymysql.connect(host='localhost', port=3306, user='root', password='mysql',database='python', charset='utf8') # 獲取游標對象 cursor = conn.cursor() # 查詢 SQL 語句 sql = "select * from students;" # 執行 SQL 語句 返回值就是 SQL 語句在執行過程中影響的行數 row_count = cursor.execute(sql) print("SQL 語句執行影響的行數%d" % row_count) # 取出結果集中一行數據, 例如:(1, '張三') # print(cursor.fetchone()) # 取出結果集中的所有數據, 例如:((1, '張三'), (2, '李四'), (3, '王五')) for line in cursor.fetchall(): print(line) # 關閉游標 cursor.close() # 關閉連接 conn.close()
創建連接對象
調用pymysql模塊中的connect()函數來創建連接對象,代碼如下:
conn=connect(參數列表)
* 參數host:連接的mysql主機,如果本機是'localhost' * 參數port:連接的mysql主機的端口,默認是3306 * 參數user:連接的用戶名 * 參數password:連接的密碼 * 參數database:數據庫的名稱 * 參數charset:通信采用的編碼方式,推薦使用utf8
連接對象操作說明:
- 關閉連接 conn.close()
- 提交數據 conn.commit()
- 撤銷數據 conn.rollback()
獲取游標對象
獲取游標對象的目標就是要執行sql語句,完成對數據庫的增、刪、改、查操作。代碼如下:
# 調用連接對象的cursor()方法獲取游標對象 cur =conn.cursor()
游標操作說明:
- 使用游標執行SQL語句: execute(operation [parameters ]) 執行SQL語句,返回受影響的行數,主要用於執行insert、update、delete、select等語句
- 獲取查詢結果集中的一條數據:cur.fetchone()返回一個元組, 如 (1,'張三')
- 獲取查詢結果集中的所有數據: cur.fetchall()返回一個元組,如((1,'張三'),(2,'李四'))
- 關閉游標: cur.close(),表示和數據庫操作完成