2010-02-24 71 views
2

我沒有爲我的作品寫任何觸發器。現在我想知道如何編寫觸發器,我在哪裏編寫它。是否可以在phpmyadmin中將觸發器編寫爲SQL查詢。我在哪裏寫MySQL觸發器

請幫我寫一個簡單的扳機......

我提前 試圖像下面

Create Trigger sales_bi_trg 
BEFORE INSERT ON sales 
FOR EACH ROW 
BEGIN 
DECLARE num_row INTEGER ; 
DECLARE tot_rows INTEGER ; 
SELECT COUNT(*) 
INTO tot_rows 
FROM sales 
WHERE employee_id = NEW.employee_id ; 
    IF num_row > 0 THEN 
     UPDATE perfomance 
    SET total_sales = NEW.sale_amt + total_sales, 
    ave_sale = total_sales/(tot_rows + 1) 
    WHERE employee_id = NEW.employee_id ; 
    ELSE 
    INSERT INTO perfomance 
(employee_id, name, total_sales,ave_sale) 
VALUES (NEW.employee_id, NEW.name, NEW.sale_amt, NEW.sale_amt) ; 
    END IF ; 

感謝Nisanth

回答

2

在phpMyAdmin,您可以創建在SQL窗口觸發。

您可能必須將定界符設置爲「$$」而不是默認的「;」。您可以從SQL窗口的底部輕鬆更改。

Delimiter in phpMyAdmin http://img52.imageshack.us/img52/9144/phpmyadmin.jpg

另外,請確保您與END命令,這是從你的榜樣缺失關閉扳機區塊。

+1

不相關的問題或者你的答案 - PNG屏幕截圖將用更少的大小;-) – zerkms 2010-02-24 10:07:33

+0

喜丹尼爾, 更好如果妳不介意u能寫簡單的代碼。我嘗試了很多時間,但得到了一些SQL語法錯誤 – 2010-02-24 10:07:44

+0

@Nisanth:你得到什麼語法錯誤? – 2010-02-24 10:21:41