pymysql庫中提供了兩個常用的物件:connection物件和cursor物件。
1. connection物件
connection物件用於建立與mysql資料庫的連線,可以通過以下方法建立:connect(引數列表)
以上方法中的常用引數及其含義如下:
·引數host,資料庫所在主機的ip主機位址,若資料庫位於本機,可設為localhost。
·引數port,資料庫占用的埠,預設是3306。
·引數database ,表示資料庫的名稱。
·引數user,連入資料庫時使用的使用者名稱。
·引數password ,使用者密碼。
·引數charset,表示通訊採用的編碼方式,推薦使用utf8。
使用connect()方法向本地資料庫建立連線,示例**如下:conn = pymysql.connect(
host='localhost',
user='root',
password ='123456',
database ='dbtest',
charset='utf8')
pymysql庫為connection物件提供了一些實現了資料庫操作的常用方法,這些方法的說明如表1所示。
表1 connection物件的常用方法
方法說明close()關閉連線
commit()提交當前事務
rollback()回滾當前事務。事務回滾是指,事務在執行過程中因發生某種故障而不能繼續執行,使得系統將事務中對資料庫的所有已完成的更新操作全部撤銷,將資料庫返回到事務開始時的狀態。
cursor()建立並返回cursor物件
2. cursor物件
cursor物件即游標物件,它主要負責執行sql語句。cursor物件通過呼叫connection物件的cursor()方法建立。使用上文建立的connection物件conn獲得游標物件,示例**如下:cs_obj = conn.cursor()
cursor物件的常用屬性和方法分別如表2和表3所示。
表2 cursor物件的常用屬性屬性說明rowcount獲取最近一次execute()執行後受影響的行數
connection獲得當前連線物件
表3 cursor物件的常用方法
方法說明close()關閉游標
execute(query, args=none)執行sql語句,返回受影響的行數
fetchall()執行sql查詢語句,將結果集(符合sql語句中條件的所有行集合)中的每行轉化為乙個元組,再將這些元組裝入乙個元組返回
fetchone()執行sql查詢語句,獲取下乙個查詢結果集
多學一招:sql語句
sql(全稱structure query language)是結構化查詢語言,也是目前應用較廣泛的用於訪問和操作關聯式資料庫的標準語言,具有易學易用、功能豐富的特點。下面將對基礎的sql語句進行介紹。
(1)建立資料庫
建立資料庫使用「create database」語句,語法格式如下:create database 資料庫名稱
建立資料庫dbtest的示例如下:create database dbtest
(2)刪除資料庫
刪除資料庫使用「drop database」語句,語法格式如下:drop database 資料庫名稱
刪除資料庫dbtest的示例如下:drop database dbtest
(3)建立表
建立表使用「create table」語句,語法格式如下:create table 表名稱(
欄位名 字段型別 [約束],
欄位名 字段型別 [約束],
欄位名 字段型別 [約束]
mysql支援的字段型別很豐富,主要包括數值、日期和字串型別。其中常見的數值型別有int、double、float等,常見的日期型別有date、time、year,常見的字串型別有char和varchar。在設計資料表的字段時,可以為其新增約束,例如,primary key用於設定某個字段為主鍵,unique用於設定某個欄位的值唯一,not null用於設定某個字段不能有空值。
在之前建立的資料庫dbtest中建立資料表users,示例如下:use dbtest; # 使用dbtest資料庫
create table users(
userid int primary key, # userid欄位被設定為主鍵
username varchar(20) unique, # username的值是惟一的,不能重複
userpwd varchar(20) not null # userpwd欄位的值不能為空
(4)資料的增加
增加資料使用「insert into」語句實現,語法格式如下:insert into table_name (欄位1, 欄位2,......欄位n)
values (值1, 值2, ......值n);
例如,向users表裡新增2行資料:
insert into users(userid,username,userpwd)
values(1,'xiaoming','123456');
insert into users(userid,username,userpwd)
values(2,'xiaohong','654321');
(5) 資料的刪除
刪除資料指從資料庫中將記錄徹底刪除,使用「delete」語句和where子句實現,語法格式如下:delete from 表名稱 where 條件
例如,從users表中將第1條資料刪除:delete from users where userid = 1
(6) 資料的更新
更新資料使用「update」語句和where子句實現,語法格式如下:update 表名稱
set 欄位1 = 數值1,
欄位2 = 數值2,
欄位3 = 數值3.. ..
where 條件
例如,將表users中userid為1的使用者名稱改為「小華」:update users set username = "小華" where userid = 1
(7) 資料的查詢
查詢資料使用「select」語句實現,語法格式如下:select 欄位1,欄位2,......欄位n from 表名稱
還可以使用select語句和where子句實現條件查詢,語法格式如下:select 欄位1,欄位2,......欄位n from 表名稱 where 條件
例如,從users表中查詢所有的資料:use dbtest;
select * from users
猜你喜歡:
pymysql語法 pymysql用法
pymysql用法 一 基礎用法 匯入 import pymysql 連線資料庫 conn pymysql.connect host user password database 建立游標 cur conn.cursor 括號內沒有任何設定 查詢後輸出的結果是元組形式 括號內新增cursor pym...
pymysql語法 pymysql的用法
一 首先要安裝mysql,我安裝的mysq5.7的 二 啟動mysql,啟動 net start mysql 停止 net stop mysql 解除安裝 net delete mysql 三 安裝pymysql模組 pip直接安裝即可 四 基本的增刪改查的操作 coding utf 8 impor...
mac多版本python安裝 pymysql
系統裡面安裝了多個python的版本,有2.7和3.4等。預設的2.7版本,但我開發需要3.4版本的。預設情況下,用pip安裝pymysql sudo pip install pymysql安裝之後,在命令列裡面測試 import pymysql如果沒有報錯,則表示安裝成功。找到3.4到安裝路徑,我...