5分鐘使用存儲過程,構建百萬測試數據
一、怎么創建測試數據
如果你會編程語言,那么你可以使用java、python、php等等語言通過對應的工具包操作數據庫來完成測試數據的構建。
如果你不會這些語言,恰好你又會一些sql語句,使用存儲過程完成測試數據構造是再好不過了。
并且存儲過程就是sql腳本,存儲、執行、查看結果都在一個工具類就可完成非常方便。(本例采用mysql數據庫)
二、什么是存儲過程
存儲過程(Stored Procedure)是在大型數據庫系統中,一組為了完成特定功能的SQL 語句集,它存儲在數據庫中, 一次編譯后永久有效,用戶通過指定存儲過程的名字并給出參數(如果該存儲過程帶有參數)來執行它。
存儲過程是數據庫中的一個重要對象。
簡單理解:完成特定功能的方法
三、表結構
首先我們先來查看下需要插入測試數據的表member,表中存放的是用戶信息。

四、mysql內置函數
通過上圖我們已經知道了member表結構,其中RegName用戶名一般會不允許重復。
我們需要使用一些隨機的或者有規律的字符串。
還有手機號碼和注冊時間這些都不是固定值,所以需要借助mysql中的內置函數:
CONCAT(str1,str2,...) 拼接多個字符串

MD5(str) md5加密

RAND() 生成一個0-1之間的隨機數

NOW()獲取當前時間
五、編寫存儲過程
首先我們先把對member的插入語句寫好,之后寫存儲過程就在這個基礎上進行修改

結果:

OK,現在已經成功插入一條數據,接下來我們通過存儲過程完成10000條數據的插入。

最后執行存儲過程
call CrateTestData();
結果如下
