2010-04-12 31 views
1

我有兩個存儲過程和一個觸發器,我正在採取的是在SQL Server 2005中完成的。我想用phpmyadmin在mysql中重新創建它們。每次我把它們放進去,我得到一個1064錯誤。這是因爲phpmyadmin不能很好地處理存儲過程或觸發器,還是因爲從sql server 2005到mysql的語法是非常不同的?如果是這樣,那麼我可以在哪裏上網學習正確的語法來在mysql/phpmyadmin中編寫我的存儲過程和觸發器......或者我應該在巴恩斯和貴族手中拿一本書嗎?這是我的高級項目。在Sql Server和MySQL中存儲過程和觸發器是否相同?

+1

我們可以看看代碼嗎?你可以發佈一個URL或粘貼它(如果它不是>約40行代碼...) – lexu 2010-04-12 20:27:21

回答

0

這是因爲MySQL不支持Transact-SQL,這是SQL變體Sybase和MSSQLServer用於編程觸發器和存儲過程。

所以,你的問題的答案是:NO

+0

所以,如果我想使這些程序和觸發器工作......我根本無法? – kmalik 2010-04-12 20:13:19

+0

不是沒有一些測試和修改。 – 2010-04-12 20:23:03

1

MySQL中的語法和功能集略有不同,但如果不相同,概念和使用模式和設計動機將非常相似。我建議在MySQL手冊讀了購買任何書籍前:

Triggers

Stored Procedures

所以你可以肯定你的端口T-SQL代碼MySQL的SQL方言。

+0

謝謝!我確實無法確定是因爲軟件還是t-sql問題。 – kmalik 2010-04-12 20:27:34

+0

@ user314877:在T-SQL中可能存在對轉錄有挑戰的成語,但流量控制等應該輕鬆過來。 – lexu 2010-04-12 20:31:01