mysql insert 事務相關 草稿

2022-03-12 20:55:35 字數 621 閱讀 7050

當 insert 多條語句時初步試了一下是自帶事務機制的,如在乙個這樣的表中:

執行語句

insert into `t_mytest`(`id`) values (1),(2),(3),(4),(5),(6);

時會失敗,不會插進任何一條資料。

一開始試的時候發現前面的 1,2,3 會插進去,換成 begin; insert into `t_mytest`(`id`) values (1); insert into `t_mytest`(`id`) values (2); rollback; 的形式也不行,後來才發現原來是因為表的儲存引擎是 myisam 而不是 innodb。

另外我通過 phpmyadmin 往乙個 5.7 以上版本的 mysql 伺服器裡建立表並寫入資料時發現資料寫入返回成功,可是 select 時沒有任何東西,後來 show table 時才發現這個表的儲存引擎是 blackhole,類似於 linux 的 /dev/null,資料只進不出。應該是因為 phpmyadmin 的版本太低,和 5.7 的伺服器太不匹配,建立表時預設使用 blackhole 的儲存引擎了,真神奇。

mysql insert 主鍵重複

mysql中insert into和replace into以及insert ignore用法區別 mysql中常用的三種插入資料的語句 insert into表示插入資料,資料庫會檢查主鍵,如果出現重複會報錯 replace into表示插入替換資料,需求表中有primarykey,或者uniqu...

C 事務相關

之前在程式中用到事務時,都是在儲存過程中建立事務來對資料進行控制,其實在c 中也有事務類。1 dbtransaction類對資料庫訪問新增事務,它是對資料庫事務操作的基類,繼承此類的有 system.object system.marshalbyrefobject system.data.commo...

長事務相關

長事務是informix的乙個非常重要的機制,該機制如果處理不好必將非常嚴重的影響資料庫的效能和使用。其他資料庫貌似沒有類似的問題。長事務出現的根源是乙個事務跨越的邏輯日誌檔案的數量和全部邏輯日誌檔案的數量比例控制的不好。先說乙個事務跨越的邏輯日誌檔案的數量,該數量的大小依賴於兩個方面 1 事務不大...