MySQL大數據入庫(單一表) 最近一段時間在研究數據入庫,對於INSERT命令,少量數據時可以滿足,而對於大量數據插入同一個表的時候速度很慢,明顯不符合要求。於是從網上找了一下,MYSQL中有一個LOAD DATA INFILE命令。在此簡單說一下LOAD DATA INFILE的作用:它主要將文件中記錄批量錄入表中,速度非常快。但只能對於一個表進行操作,也就是說所有的記錄都是一個表中的,有一定的局限性。 關於MYSQL的連接字符串:
m_pConnection->Open("DRIVER={MySQL ODBC 5.1 Driver}; SERVER=localhost; DATABASE=test;","root","123456",adModeUnknown);
{MySQL ODBC 5.1 Driver}是MySql的ODBC驅動,官網上有下載,5.1是版本 SERVER是mysql安裝電腦的IP,如果是本地用localhost就可以. DATABASE是要連接的數據庫。 Open方法中"root"是數據庫用戶名 “123456”是用戶密碼。 測試步驟:1.新建一個數據庫test 2.在這個數據庫下執行以下數據庫腳本
CREATE TABLE T_TEST( F_ID BIGINT PRIMARY KEY, F_NAME VARCHAR(32), F_SEX SMALLINT, F_BIRTHDAY DATETIME, F_CONTENT VARCHAR(512));
3. 執行程序時確保T_TEST表為空. 4. 測試結果是10W條數據在1s左右可以入庫