2014-01-23 95 views
0

好球員,我的問題是怎樣的一個世界第一的問題,但我的錯誤...如何順序插入後觸發語句與MySQL工作臺

我設計我的MySQL數據庫和MySQL Workbench和繪圖後所有表,觸發器和INSERT s我讓Workbench爲我生成了CREATE-SQL。這是真的很酷,但現在的問題是:

我的觸發器

一個是AFTER INSERT觸發器依賴於INSERT我 Workbench中定義了。但是因爲觸發器是在INSERT之後創建的,所以觸發器不會觸發。

當然,我可以打開一個文本編輯器,並在觸發器後複製我的所有INSERT s,但是這就是錯誤點。我也可以編寫腳本,但我的問題是:

我可以在MySQL Workbench中更改導出的CREATE -SQL的順序嗎?

+0

什麼是錯誤?告訴我們你的腳本 - CREATE TABLE,CREATE TRIGGER ... – Devart

+0

沒有錯誤。 CREATE TRIGGER語句就在INSERT語句的後面,這就是觸發器不觸發的原因。所以就像我之前要求改變CREATE語句的順序一樣。 – Sonnywhite

回答

0

簡答:不,您不能重新排序這些語句。

長答案:模型中的INSERT數據不能用作數據庫的一般數據存儲,它們根本就不是用於此目的的。其目的是允許在同步/正向工程之後輸入測試數據。更好的方法是將一個單獨的SQL腳本添加到模型中(請參閱註釋和腳本的概述頁面)。完成同步之後,可以使用腳本運行其他代碼。不過,我不得不承認,目前這些腳本的整合並不太好。您必須複製sql文本並將其粘貼到打開連接的編輯器中。

+0

嘿,謝謝你的回答!由於我使用另一個同步工具加載CREATE腳本,因此也可以使用該工具加載附加腳本。我想我必須處理那個:)再次感謝 – Sonnywhite