視頻地址:http://edu.51cto.com/lecturer/4626073.html
JMeter 通過 JDBC Connection Configuration 和 JDBC Request 可以連接數據庫,並進行增刪改查操作,支持各種常見的數據庫,本文以最常用的 MySQL 數據庫爲例講解,其它數據庫的使用方法類似。
一、下載驅動包
在使用之前,需要先下載與數據庫對應的驅動包。
這裏以 mysql 爲例講解,我使用的驅動包是 mysql-connector-java-5.1.7-bin.jar,下載後放到 jmeter 的 lib 目錄下,重啓 jmeter 生效。
二、JDBC連接配置
在發送 JDBC 請求之前,需要通過 JDBC Connection Configuration 元件配置連接數據庫的信息。
如上圖所示,需要注意的是如下兩點:
Variable Name for created pool:連接池的變量名,一定要跟 JDBC Request 中的連接池變量名一致;
Database Connection Configuration:其中 url 格式爲 jdbc:mysql://ip:port/dbname,一個請求只能執行一條 sql 語句,若要執行多條 sql 語句,url 要寫成 jdbc:mysql://ip:port/dbname?allowMultiQueries=true 。
JDBC Driver class 選擇與數據庫對應的驅動,下面是登錄數據庫的用戶名密碼,其它項都按默認值即可。
不同數據庫的配置如下所示:
三、JDBC Request
在這裏寫 sql 語句,實現增刪改查,如下圖所示:
注意上圖中的變量名稱要跟 JDBC Connection Configuration 中的變量名稱一樣。
Query Type:不同語句對應不同的 Query Type
1、單條查詢語句
一個請求中執行一條查詢語句
Database URL:jdbc:mysql://192.168.72.128:3306/dang
Query Type:Select Statement
2、多條查詢語句
一個請求中執行多條查詢語句
Database URL:jdbc:mysql://192.168.72.128:3306/dang?allowMultiQueries=true
Query Type:Callable Statement
3、增刪改語句
insert 、delete 語句使用的 Query Type 與 update 語句的一樣,所以此處不再單獨列出。
單條 sql 的 Query Type:Update Statement
多條 sql 的 Query Type:Callable Statement
4、參數化 sql 語句
select author from d_book where id=${id};
update d_book set author = '${author}' where id=${id};
5、佔位符語句
select * from d_book where id = ? and author = ?; 用 ? 代替 where 條件值;
Parameter values :填寫 ? 代表的值,多個值用逗號分隔;
Parameter types :參數值的類型,不管什麼類型都寫成 varchar,幾個參數就寫幾個,多個值用逗號分隔;
Query Type:Prepared Update Statement 或 Callable Statement