1

このメッセージの意味は理解できますが、なぜこのメッセージが表示されるのかわかりません。このフィールドを更新しようとしているわけではないので、これを言います。

列の定義:

@Column(name="company_name")
private String companyName;

次に、EntityManager を使用してクエリを作成します。

クエリ

query = em.createQuery("update Client set companyName = :companyName" +
                " where id = :id");

query.setParameter("companyName", client.getCompanyName());
query.setParameter("id", client.getId());

query.executeUpdate();

そして、例外は次のとおりです。Data truncation: Data too long for column 'company_cnpj' at row 1

しかし、'company_cnpj' 行は変更していません。なぜこのエラーが発生するのですか?

4

1 に答える 1

2

データベース内の文字列には常に長さがあります。指定しなかったため、デフォルトで255になります。この投稿では、変更方法について説明しています。

hibernateプロパティの文字列の長さの質問

于 2012-09-03T17:10:53.767 に答える