拋異常的**是:
signal sqlstate
'hy000'
setmessage_text =
'手動丟擲異常'
;
可能是mysql版本問題,5.7可以,6.0不行
解決辦法:
刪除乙個不存在的表,主動製造異常...(這個方法有點坑)
練習的時候沒考慮事務
業務是新增一條訂單表,但是庫存不足,實現的功能是不生成訂單,
解決方法是:
觸發器:
create trigger stock_manager
before insert on t_stockout_detal
for each row
begin
declare med_count int default 0;
select med_stock into med_count from t_medicine where med_id = new.sdtl_med_id;
if med_count>=new.sdtl_num then
update t_medicine set med_stock = med_stock - new.sdtl_num where med_id = new.sdtl_med_id;
else
delete from t_stockout_detal where sdtl_id = new.sdtl_id;//實際上執行會報錯(有點二)
end if;
end;
delete from t_stockout_log where slog_id not in (select sdtl_slog_id from t_stockout_detal);
service層:
如果新增不成功,再剛才的基礎上,再執行一段sql
@override
public boolean addstockoutlog(stockoutlogbean stockoutlog)
int n = sdd.add(sdtllist);
if(n<=0)
return n>0;
}
mysql 手動安裝 手動安裝MySQL8 0
首先跟大家嘮一嘮家常,隨著mysql迅速的更新,mysql突飛猛進已經更新到了8.0版本,那麼它和我們之前用的5.x版本有什麼明顯的區別那?首先給大家看下mysql5.x自帶表的查詢速度 之後獻上mysql8.0的自帶表的查詢速度 一樣的資料結果顯而易見,mysql8.0的坑我是走了個遍,為了讓大家...
手動匯入mysql
命令列匯出資料庫 1,進入mysql目錄下的bin資料夾 cd mysql中到bin資料夾的目錄 如我輸入的命令列 cd c program files mysql mysql server 4.1 bin 2,匯出資料庫 mysqldump u 使用者名稱 p 資料庫名 匯出的檔名 如我輸入的命令...
mysql 手動安裝
最重要的命令在此 mysqld initialize insecure user mysql 文件表明,使用 initialize生成隨機密碼,由於自己學習,使用 initialize insecure生成空密碼。預設帳號root,後面的 user mysql不更改 假定安裝目錄是d program...