>데이터 베이스 >MySQL 튜토리얼 >Hibernate DDL에서 \'type=MyISAM\' 구문 오류가 발생하는 이유는 무엇입니까?

Hibernate DDL에서 \'type=MyISAM\' 구문 오류가 발생하는 이유는 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-15 02:33:02860검색

Why Am I Getting a

Hibernate에서 생성된 DDL의 잘못된 구문 오류 "type=MyISAM"

"SQL 구문에 오류가 있습니다. Hibernate에서 생성된 DDL의 'type = MyISAM' at line 1" 오류 근처에서 사용할 올바른 구문에 대한 MariaDB 서버 버전에 해당하는 설명서는 일반적으로 더 이상 사용되지 않는 "type" 속성의 사용으로 인해 발생합니다. 분석 및 솔루션은 다음과 같습니다.

Ursache

SQL의 "type" 속성은 테이블의 스토리지 엔진을 지정하는 데 사용됩니다. MySQL 4.x 및 이전 버전에서는 "type=MyISAM"을 사용하는 것이 일반적이었습니다. 그러나 이 속성은 MySQL 4.0에서 더 이상 사용되지 않으며 5.5에서 제거되었습니다.

Lösung

이 문제를 해결하려면 Hibernate 구성에서 올바른 방언을 사용해야 합니다. MariaDB 및 Hibernate 버전에 따라 다음 방언 중 하나를 사용해야 합니다:

  • MariaDB:

    • org. hibernate.dialect.MariaDBDialect(MariaDB 10.0 이하용)
    • org.hibernate.dialect.MariaDB53Dialect(MariaDB 10.1 이상용)
    • org.hibernate.dialect.MariaDB106Dialect(MariaDB 10.6 이상용) 이후)
  • MySQL:

    • org.hibernate.dialect.MySQL5Dialect(MySQL 5.0 이상용)
    • org.hibernate.dialect.MySQL55Dialect(MySQL 5.5 이상용)
    • org.hibernate.dialect.MySQL57Dialect(MySQL 5.7 이상용)
    • org.hibernate.dialect. MySQL8Dialect(MySQL 8.0 이상용)

Beispiel

Hibernate 구성 파일에서 다음과 같이 올바른 방언을 지정할 수 있습니다. :

<property name="hibernate.dialect">org.hibernate.dialect.MariaDBDialect</property>

Hinweis

Hibernate 6에서는 MySQLDialect 또는 MariaDBDialect를 사용해야 합니다. 이러한 방언은 연결된 데이터베이스 버전에 따라 자동으로 구성되기 때문입니다.

위 내용은 Hibernate DDL에서 \'type=MyISAM\' 구문 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.