Düzenli deyim ile (yalnızca ifade) java enumları sorgulara koyabilirim ve gayet iyi çalışıyor. Hazırlık ifadesiyle bunu yapamam?Hazırlanmış deyimde mysql enum için Java enum
5
A
cevap
9
MySQL, enum türünü sorgu için dize olarak ele alır. Yani buna PreparedStatement.setString()
yöntemi kullanmak ve numaralandırma adı geçmesi gerekir:
preparedStatement.setString(1, MY_ENUM.name());
Bu, elbette, senin java için isimler ve MySQL çeteleler maçı varsayar.
Uyarı:name()
docs başına yerine olarak toString()
seçildi:
adı() Bu yöntem öncelikle doğruluğu tam adını alma bağlıdır uzman durumlarda kullanılmak üzere tasarlanmıştırserbest bırakılmaya kadar değişmeyecek.
1
Bunu yapabileceğini (daha fazla yer ve performans dostu olan) tamsayı olarak saklamak tercih ederseniz:
preparedStatement.setInt (1, myEnum.ordinal());
Bu, basitlik sağlar, ancak, koddaki enum öğelerinin sırasını değiştirmediğinizden emin olmalısınız, çünkü db'de depolananlarla ilişkilerini bozacaktır.
İlgili konular
- 1. Enum, benim MySQL veritabanında
- 2. MySQL Enum doğru kullanımı?
- 3. Enum of Enum NULL
- 4. java enum tip örneği
- 5. Java: enum toString()
- 6. Java Enum Temel Sınıfları
- 7. Java enum miras
- 8. Java dizi enum değerleri
- 9. Enum
- 10. Java çekirdeğinde enum değişkeni bildir
- 11. Enum type initialized confusion, Java
- 12. Enum için özelleştirme şablonu
- 13. Enum için IRouteConstraint
- 14. HasFlags hep bu enum tanımıdır enum
- 15. dönüştürme enum bir enum Uyruk sahip piton
- 16. Enum değerlerini ayrı enum türlerinde yeniden kullanma
- 17. Python enum - Ben enum şu var
- 18. C# "Enum" yöntemi ve "enum" parametresi
- 19. enum valueOf IllegalArgumentException: Hayır enum const sınıfı
- 20. Enum vs Çok iyi yazılmış enum
- 21. bir Enum
- 22. Bir ENUM
- 23. C++ enum
- 24. enum sınıfı
- 25. kapsamlı enum
- 26. Açılır menüdeki enum değerleri php mysql
- 27. Tablo Boyunca MySQL ENUM Değerinin Değerini Değiştirme
- 28. ORDER BY "ENUM alanı" içinde MYSQL
- 29. C# enum
- 30. extern enum