MySQL資料庫SQL語句之優化INSERT語句

2021-12-30 08:01:59 字數 584 閱讀 9247

當進行資料insert 的時候,可以考慮採用以下幾種優化方式

如果同時從同一客戶插入很多行,應盡量使用多個值表的insert 語句,這種方式將大大縮減客戶端與資料庫之間的連線、關閉等消耗,使得效率比分開執行的單個insert 語句快 (在大部分情況下,使用多個值表的insert 語句能比單個insert 語句快上好幾倍。)

下面是一次插入多值的乙個例子:

insert into table_name values(1,2),(1,3),(1,4)...如果從不同的客戶端插入很多行,可以通過使用 insert delayed 語句得到更高的速度。 delayed的含義是讓insert 語句馬上執行,其實資料都被放在記憶體的佇列中,並沒有真正寫入磁碟,這比每條語句分別插入要快的多; low_priority剛好相反,在所有其他使用者對錶的讀寫完成後才進行插入。 將索引檔案和資料檔案分在不同的磁碟上存放(利用建表中的選項) 如果進行批量插入,可以通過增加bulk_insert_buffer_size 變數值的方法來提高速度,但是,這只能對myisam表使用 當從乙個文字檔案裝載乙個表時,使用load data infile. 這通常比使用很多的insert 語句快20 倍。

MySQL資料庫高階SQL語句之MySQL儲存過程

create procedure 過程名 過程引數 過程體 過程引數 格式 in out lnoutj引數名 型別 mysql delimiter 將語句的結束符號從分號 臨時改為兩個 可以是自定義 mysql create procedure delete matches in p playern...

資料庫調優教程 優化sql語句

上一章講了如何設計一張好的表,一張好的表自然需要好的sql語句去操作它。本章就來聊聊如何優化sql語句。1.sql語句優化原則 優化需要優化的query 定位優化物件效能瓶頸 從explain入手 盡可能在索引中完成排序 只取自己需要的column 盡可能避免複雜的join和子查詢 2.優化limi...

mysql資料庫常用SQL語句

1.給資料庫新增乙個字段 alter table pre common member field home 表名 add stickblogs 欄位名 varchar 50 資料型別 2.刪除資料庫的乙個字段 alter table param info 表名 drop column channel...