FeatureMetadataという別のクラスとの間で、ManyToOneという新しい方向性を持つオブジェクト、Featureの一括削除を実行しようとしています。 SQLGrammerExceptionがスローされました。MySQLクロス結合クエリでHibernate例外が発生しました
私が使用しているHQL:
String hql = "delete from Feature F where F.featuresMetadata.stateGeoId = :stateGeoId";
は、show SQLに目を向けると、以下が生成されます。
:delete from FEATURE cross join FEATURESMETADATA featuresme1_ where STATEGEOID=?
は、DBクライアントに直接SQLを実行するには、この例外を与えます
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cross join FEATURESMETADATA featuresme1_ where stategeoid='01'' at line 1
生成されたSQLがExceptionをスローしているので、私はMySQL5InnoDBDialectからMySQLInnoDBDialect、ただし変更はありません。
誰でも手助けできますか?
んFeaturesMetaData機能へのFKを持っていますか? – Mindfulgeek
FeatureにFK to FeaturesMetadataがあります。 – Jason