2014-09-11 71 views
3
DELIMITER $$ 
CREATE DEFINER=`root`@`localhost` TRIGGER `grade_one_BINS` 
BEFORE INSERT ON `grade_one` FOR EACH ROW 
set new.student_no = concat(new.letter, ' - ',new.num) 

存在串聯有自動遞增值,因爲觸發是之前插入因爲它會顯示NUM列問題的列創建觸發器一個0值,因爲自動增量仍然是0,直到你插入一些值...你能幫我嗎?如何串聯一個AUTO_INCREMENT值列,並有一個默認值

+0

student_no柱讓它的INSERT觸發器後? – 2014-09-11 09:56:35

+1

@ N.B .:你不能在後觸發器中更改'student_no' – 2014-09-11 09:57:11

+0

@juergend - 正確,我的錯誤是爲了「說話」,然後檢查它是否工作:) – 2014-09-11 10:00:39

回答

1

我建議您不要將數據再次存儲在numletter列中已有的另一列中。

您可以生成即時在你選擇這樣

select *, 
     concat(letter, ' - ', num) as student_no 
from your_table 
+0

是當我輸入新值時,代碼會自動連接列號和字母? – 2014-09-11 11:05:29

+0

是的,每次運行此選擇時,都將使用來自DB的當前值。 – 2014-09-11 11:08:48

+0

好吧,它不工作,但謝謝 – 2014-09-11 12:18:29

相關問題