簡體   English   中英

EntityManager (Hibernate + MySQL) 在更新時截斷空白處的字符串

[英]EntityManager (Hibernate + MySQL) truncates the string at the White-Space while updating

代碼是:

EntityManager entityManager = entityManagerProvider.get();
String qry = "UPDATE MyTable x SET x.txt='123 321' WHERE ID=1";            
Query query = entityManager.createQuery(qry);
query.executeUpdate();

我在數據庫中得到的是“123”而不是“123 321”。 varchar 是 255,它總是在空白處截斷! 如果我使用普通的 SQL 查詢,則沒有問題。

我究竟做錯了什么?

在這種情況下,答案是使用:

EntityManager entityManager = entityManagerProvider.get();
String qry = "UPDATE MyTable x SET x.txt=:txtParam WHERE ID=1";            
Query query = entityManager.createQuery(qry);
query.setParameter("txtParam", "123 321");

query.executeUpdate();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM