2011-09-12 10 views
5

Uygulamam Windows ortamında çalışıyor, ancak bir linux sunucusunda test etmeye çalıştığımda, JPA EclipseLink sql ile bir sorunum var. küçük harfleJPA, EclipseLink ve büyük/küçük harf duyarlı mysql ile ilgili sorun

böyle başkalarıyla karışık
INSERT INTO PFC(ID, ALUMN,PROPOSED_ID) VALUES (?, ?, ?) 

(dizileri): Ben küçük harflerle tüm tabloları oluşturulmuş, ama günlüklerinde baktığımda, bütün büyük harf, böyle bir şey izlemek

INSERT INTO buzonmensajes (mensajeid, buzonid) VALUES (?, ?) 
     bind => [27, 1] 

ve tabii , her şey ters giderse, sunucu

Biz tüm veritabanı işlemleri tanımlamak için orm.xml kullanın .. vs büyük tablolar, bulamadık (sorgular, kişiler, vs ..) ve her şey küçük harfle ...

Bu davranışı değiştirmek için bir Mysql paramater olduğunu biliyorum, ancak maalesef bunu değiştiremiyorum. Sorunum, tüm querys'leri oluşturmak ve tablo adıyla durum tabloları için insert ismini eklemek için JPA'ya söylemem gerektiğidir.

cevap

5

Sorun, EclipseLink'in bazı adların varsayılan değerlerini vermesine izin verdiğinden dolayı oluşuyor olabilir. Veritabanınızın durumunu kullanarak adlarını belirlerseniz EclipseLink bu vakaları varsayılan olarak kullanmalıdır.

Eğer anlarsanız

her zaman '\ "' desen kullanılarak ayrılmış tanımlayıcıları kullanarak davayı zorlayabilir çalışmıyor: @Table("\"pfc\"") ama bu gerekli olmamalıdır

Eğer

kullandığınız EclipseLink hangi sürümü.?
+1

Merhaba, Gordon, Dört yardım için teşekkürler. Ek açıklamalarım yok, tüm varlıklarım orm.xml dosyasında yapıyorum ama haklısınız, tablo adını tanımlamak için

etiketi ekledim ve problem çözüldü, böyle bir şey :
Aitor