sql >> データベース >  >> RDS >> Mysql

ビットまたは文字の代わりにブール値のJPA、MySQL、およびTinyInt(1)を休止状態にする

    @TypeアノテーションはHibernateアノテーションです。

    フルJPA2( Hibernate 3.6+ を使用) )、ブールフィールドをBIT(1)ではなくTINYINT(1)SQL型にマップする方法は、columnDefinition属性を使用することです。

    @Column(nullable = false, columnDefinition = "TINYINT(1)")
    private boolean enabled;
    

    nb:この場合、length属性は効果がないようです。そこで、(1)構文を使用します。

    Hibernate4.0以降を使用 、この種の構文は、次のようなランタイムエラーを引き起こす可能性があります:

    Wrong column type Found: bit, expected: TINYINT(1)
    

    この場合、唯一の方法は tinyInt1isBit =falseを使用することです。 次のようなMySQLデータソース接続文字列内:

    jdbc:mysql://server_host:3306/database?tinyInt1isBit=false
    

    ちなみに、次のように長さ属性を使用できるようになりました:

    @Column(nullable = false, columnDefinition = "TINYINT", length = 1)
    private boolean enabled;
    


    1. Java SQLServer2012データベースを開くことができませんエラー

    2. サーバーステータスコードを修正する方法:302 SQL InjectMeFirefoxアドオンで見つかりました

    3. 初心者向けのSQL以下(=)演算子

    4. Access2016でテーブルからレポートを作成する方法