Rumah >pangkalan data >tutorial mysql >Mengapa saya mendapat 'MySQLSyntaxErrorException' dengan mesej 'Anda mempunyai ralat dalam sintaks SQL anda...' semasa membuat jadual dengan Hibernate?
Ralat Sintaks Tidak Sah "type=MyISAM" dalam DDL Dijana oleh Hibernate
Masalah:
Apabila mencipta jadual dengan Hibernate, "MySQLSyntaxErrorException" ditemui dengan mesej "Anda mempunyai ralat dalam sintaks SQL anda; semak manual yang sepadan dengan versi pelayan MariaDB anda untuk sintaks yang betul untuk digunakan berhampiran 'jenis = MyISAM' di baris 1."
Punca:
Serpihan "TYPE=MYISAM" yang ditamatkan dijana dalam pernyataan DDL oleh dialek Hibernate yang dikonfigurasikan. Serpihan ini tidak disokong dalam MySQL 5.5 dan kemudian atau dalam MariaDB.
Penyelesaian:
Untuk menyelesaikan isu ini, anda perlu mengkonfigurasi dialek Hibernate yang sesuai yang sejajar dengan versi pelayan pangkalan data anda.
Untuk MariaDB, bergantung pada versi anda dan versi Hibernate, gunakan salah satu dialek berikut:
Untuk MySQL, atau jika dialek MariaDB tidak tersedia dalam versi Hibernate anda, gunakan salah satu daripada dialek (atau varian):
Nota:
Nota:Nota: >Dengan Hibernate 6, anda boleh kembali menggunakan MySQLDialect atau MariaDBDialect, kerana dialek ini akan mengkonfigurasi dirinya sendiri secara automatik berdasarkan versi pangkalan data yang disambungkan.Atas ialah kandungan terperinci Mengapa saya mendapat 'MySQLSyntaxErrorException' dengan mesej 'Anda mempunyai ralat dalam sintaks SQL anda...' semasa membuat jadual dengan Hibernate?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!