0

varchar(700) を使用してデータベースにテキスト フィールドを作成したい (最大 700 文字が必要)。私はそれを次のように定義しようとしました:

@Entity
@Table(name = "t_foo)
public class Foo {

@Column(unique = true, nullable = false)
@Id
private String idNational;

@Column(length=700)
private String comment;

...

テーブル生成には次のプロパティがあります。

idNational varchar(255) NOT NULL

comment longtext NULL

コメントは varchar(700) にしたいです。長文にする理由ってあるの?varchar にする方法はありますか? これは簡単な質問かもしれませんが、解決策が見つかりません! 代わりに DDL を使用してテーブルを作成する必要がありますか?

ありがとうございました!

4

2 に答える 2

1

使用しているデータベース/バージョンはわかりませんが、varchar の最大長が 255 の MySQL のバージョンのように聞こえます。最新バージョンでは、より大きな varchar がサポートされています。

255 より大きい値を指定しているため、代わりにロングテキストを使用しています。

MySQL 5.0.3 以降では、長さが 65,535 までの varchars がサポートされています。以前のバージョンでは 255 のみです。

于 2012-07-13T14:42:22.910 に答える
-1

JPA プロバイダーの構成に問題があります。より良い解決策は、DDL を使用してテーブルを作成することです。

于 2012-07-13T14:41:28.910 に答える