Python3筆記050 - 11.1 資料庫介面
阿新 • • 發佈:2020-08-03
第11章 使用python操作資料庫
11.1 資料庫介面
''' python3連線mysql需要安裝pymysql模組; 1、本地安裝:pycharm版本是2019.3;python版本是3.7.3;pymysql版本是0.10.0; 2、遠端安裝:虛擬機器內安裝centos7系統;centos7系統內安裝mysql版本是5.7.23; 3、python連線資料庫的介面 pymysql.Connect()引數說明 host(str): MySQL伺服器地址 port(int): MySQL伺服器埠號 user(str): 使用者名稱 passwd(str): 密碼 db(str): 資料庫名稱 charset(str): 連線編碼 connection物件支援的方法 cursor() 使用該連線建立並返回遊標 commit() 提交當前事務 rollback() 回滾當前事務 close() 關閉連線 cursor物件支援的方法 execute(op) 執行一個數據庫的查詢命令 fetchone() 取得結果集的下一行 fetchmany(size) 獲取結果集的下幾行 fetchall() 獲取結果集中的所有行 rowcount() 返回資料條數或影響行數 close() 關閉遊標物件 ''' # python連線mysql程式碼,僅測試連線,未連線具體的庫 import pymysql conn = pymysql.connect(host='192.168.126.131', port=3306, user='root', password='123456') print(conn) output: <pymysql.connections.Connection object at 0x0000029D0A6025C8> # 連線成功 # 連線引數說明 connections.py檔案中Connection類的__init__()函式定義了若干個連線引數如下: ''' host=None, user=None, password="", database=None, port=0, unix_socket=None, charset='', sql_mode=None, read_default_file=None, conv=None, use_unicode=None, client_flag=0, cursorclass=Cursor, init_command=None, connect_timeout=10, ssl=None, read_default_group=None, compress=None, named_pipe=None, autocommit=False, db=None, passwd=None, local_infile=False, max_allowed_packet=16*1024*1024, defer_connect=False, auth_plugin_map=None, read_timeout=None, write_timeout=None, bind_address=None, binary_prefix=False, program_name=None, server_public_key=None '''
# 建立遊標 conn = pymysql.connect(host='192.168.126.131', port=3306, user='root', password='123456', ) print(conn) cursor = conn.cursor() print(cursor) output: <pymysql.connections.Connection object at 0x0000017E24790488> <pymysql.cursors.Cursor object at 0x0000017E249457C8> # 遊標物件 # 如想了解遊標都有哪些屬性和方法可以檢視cursors.py檔案中的Cursor類定義的一切
# 檢視下所連線資料庫的版本資訊,用到了cursor類定義的execute()和fetchall()方法 conn = pymysql.connect(host='192.168.126.131', port=3306, user='root', password='123456', ) cursor = conn.cursor() cursor.execute("select version()") data = cursor.fetchall() print("Mysql's version : %s " % data) output: Mysql's version : ('5.7.23',) # mysql的版本是5.7.23
# 建立資料庫和資料表,使用sql語句或者資料庫工具navicat;
CREATE DATABASE database_name;
CREATE TABLE table_name (column_name column_type);