Dies scheint ein Fehler in MySql
zu sein. Posting es hier, um meine Schlussfolgerung zu bestätigen und meine Erfahrung zu teilen. Wir migrieren derzeit von MS SQL Server zu MySql Community Edition 5.7.12
. Es gibt eine Tabelle, die eine virtuelle berechnete Spalte hat. Es wurde in der Verknüpfung einer Abfrage innerhalb eines Triggers verwiesen. Als Folge davon wurde der MySql Server neu gestartet.Kann nicht auf Tabellen mit berechneten virtuellen Spalten in Auslösern von MySql verweisen
Um sicherzustellen, dass es keine andere Ursache für das Ereignis gab, hatten wir eine Dummy-Tabelle ohne berechnete Spalten erstellt und auf diese Tabelle im Trigger verwiesen. Der Trigger wurde erfolgreich ausgeführt. Dann hatten wir eine weitere Dummy-Tabelle mit der berechneten Spalte erstellt. Wir hatten gerade die Tabelle in der Verknüpfung ohne den Verweis auf die berechnete Spalte verwiesen. Wenn der Trigger ausgelöst wurde, stürzte der Server ab, obwohl nur eine tatsächliche Spalte der Tabelle referenziert wurde und kein Verweis auf die berechnete Spalte vorhanden war. Daher können Sie in den Triggern nicht einmal eine Tabelle mit berechneten Spalten referenzieren.
Wir haben die virtuellen Spalten in tatsächliche Spalten konvertiert und die Abfragen von Select, Insert und Update auf der Tabelle geändert.
Gibt es eine bessere Alternative, um dieses Problem zu lösen?