INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] tbl_name [(col_name,...)] {VALUES | VALUE} ({expr | DEFAULT},...),(...),... [ ON DUPLICATE KEY UPDATE col_name=expr [, col_name=expr] ... ] DELAYED 由MySQL所添加的專屬指令,Client在送出Insert命令後,若此時MySQL無法執行此命令,則會將此命令放入INSERT-Buffer內等候可用時間再將資料寫入table,Client無須等候MySQL完成此命令便可繼續處理後續工作執行 缺點 INSERT DELAYED指令即使在Table處於可用狀態下的執行效能仍低於標準INSERT指令,INSERT DELAYED對於MySQL會有額外的系統負擔,因為每一個用於INSERT DELAYED的TABLE必須要有一個個別的Thread處理這些被Delayed-Rows的insert工作 風險: 因為Insert Delayed是採用memory-buffer方式儲存Delayed Rows,若是不當使用kill command或是系統當機,將可能造成資料遺失 支援引擎: MyISAM / Memory / Archive Tables LOW_PRIORITY 採用此修飾詞的insert會等候資料table在無任何client存取的情況下才會執行此insert動作, (I/O量大的Tables 有可能造成 Long-Time Waiting狀態產生) 支援引擎: MyISAM / Memory / Archive Tables
Microsoft Embedded MVP / Small Business MVP / MCT
MySQL Core Professional Certification
System Engineer( Linux, Windows Clustering
DBA MySQL , MSSQL
Programmer Java, Spring-JavaEE, Angular, Vue, Python, .Net
IoT Arm, CoAP , MQTT Deployer