hibernate資料型別對映匹配問題

2021-10-02 22:49:39 字數 3121 閱讀 2732

hibernate對映問題

caused by: org.hibernate.tool.schema.spi.schemamanagementexception: schema-validation: wrong column type encountered in column [lkm_gender] in table [cst_linkman]; found [char (types#char)], but expecting [varchar(255) (types#varchar)]

資料表

create

table

`cst_linkman`

(`lkm_id`

bigint(32

)not

null

auto_increment

comment

'聯絡人編號(主鍵)'

,`lkm_name`

varchar(16

)default

null

comment

'聯絡人姓名'

,`lkm_cust_id`

bigint(32

)not

null

comment

'客戶id'

,`lkm_gender`

char(1

)default

null

comment

'聯絡人性別'

,`lkm_phone`

varchar(16

)default

null

comment

'聯絡人辦公**'

,`lkm_mobile`

varchar(16

)default

null

comment

'聯絡人手機'

,`lkm_email`

varchar(64

)default

null

comment

'聯絡人郵箱'

,`lkm_qq`

varchar(16

)default

null

comment

'聯絡人qq'

,`lkm_position`

varchar(16

)default

null

comment

'聯絡人職位'

,`lkm_memo`

varchar

(512

)default

null

comment

'聯絡人備註'

,primary

key(

`lkm_id`),

key`fk_cst_linkman_lkm_cust_id`

(`lkm_cust_id`),

constraint

`fk_cst_linkman_lkm_cust_id`

foreign

key(

`lkm_cust_id`

)references

`cst_customer`

(`cust_id`)on

delete

noaction

onupdate

noaction

)engine

=innodb

auto_increment=1

default

charset

=utf8;

實體類

public

class

linkman

對映檔案

<

?xml version=

"1.0" encoding=

"utf-8"

?>

<

>

<

class

name

="com.athome.hibernate.enty.linkman" table=

"cst_linkman"

>

"lkm_id" column=

"lkm_id"

>

="native"

>

<

/generator>

<

/id>

"lkm_name"

>

<

/property>

"lkm_gender" column=

"lkm_gender" type=

"char"

>

<

/property>

"lkm_phone"

>

<

/property>

"lkm_mobile"

>

<

/property>

"lkm_email"

>

<

/property>

"lkm_qq"

>

<

/property>

"lkm_position"

>

<

/property>

"lkm_memo"

>

<

/property>

"customer" column=

"lkm_cust_id"

class

="com.athome.hibernate.enty.customer"

>

<

/many-to-one>

<

/class

>

<

原因:

mysql中lkm_gender為char型別,hibernate對映檔案中沒有特殊標註

預設string物件對應mysql中的varchar型別,所以報如上錯誤。

解決:指定資料庫 type=「char」

"lkm_gender" column=

"lkm_gender" type=

"char"

>

<

/property>

Hibernate列舉型別對映

對映列舉型別 在列舉裡面,乙個列舉例項有兩個值 name 列舉的名字,可以使用列舉型別valueof string 方發來還原這個列舉型別例項 1.資料庫直觀2.列舉型別位置隨意變化 ordinal 列舉在該型別中的位置,可以使用來 values 0 來根據索引位置來還原這個列舉型別例項 1.可以修...

抽象資料型別 「對映」 ADT Map

字典,通過儲存key data鍵值對的資料型別。adt map的結構是鍵值關聯的無序集合。其中關鍵碼key具有唯一性,通過關鍵碼可以唯一確定乙個資料值。通過雜湊表構造map。class hashtable def init self self.size 11 可以任意設定,但為了便於求解,應該設為素...

抽象資料型別對映 ADT Map

python 最有用的資料型別之一 字典 字典是一種可以儲存key value鍵值對的資料型別,其中關鍵碼key可用於查詢關聯的資料值data,這種鍵值關聯的方法稱為 對映map adt map的結構時鍵 值關聯的無序集合 關鍵碼具有唯一性 通過關鍵碼可以唯一確定乙個資料值 adt map定義的操作...