DBunit; 关于表/列名称区分大小写的困惑

启动我的应用程序时出现此错误

Caused by: org.dbunit.dataset.NoSuchColumnException: CLIENT.ID -  (Non-uppercase input column: ID) in ColumnNameToIndexes cache map. Note that the map's column names are NOT case sensitive

我不太确定为什么要得到这个,因为我的表/列名称全部都以大写字母引用(即使该消息坚持认为这不应该成为问题)

我的桌子:

mysql> describe CLIENT;

+------------------+--------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+------------------+--------------+------+-----+---------+----------------+

| ID | int(11) | NO | PRI | NULL | auto_increment |

| jdoDetachedState | tinyblob | YES | | NULL | |

| NAME | varchar(255) | NO | | NULL | |

| ADDRESS1 | varchar(255) | YES | | NULL | |

| ADDRESS2 | varchar(255) | YES | | NULL | |

| COUNTRY | varchar(255) | YES | | NULL | |

| COUNTY | varchar(255) | YES | | NULL | |

| MAINPHONENUMBER | varchar(255) | YES | | NULL | |

| POSTCODE | varchar(255) | YES | | NULL | |

| SECTOR | varchar(255) | YES | | NULL | |

| TOWN | varchar(255) | YES | | NULL | |

| WEBSITEURL | varchar(255) | YES | | NULL | |

+------------------+--------------+------+-----+---------+----------------+

12 rows in set (0.00 sec)

mysql>

我的网域实体的代码段:

@Id

@GeneratedValue

@Column(name="ID")

private Integer id;

测试日期的片段,我试图强制DBUnit使用:

<dataset>

<CLIENT ID="-1"

ADDRESS1="Endeavour House"

ADDRESS2="Russell Rd"

COUNTRY="England"

COUNTY="Suffolk"

MAINPHONENUMBER="0845 606 6067"

NAME="Suffolk County Council"

POSTCODE="IP1 2BX"

SECTOR="Local Government"

TOWN="Ipswich"

WEBSITEURL="www.suffolk.gov.uk"/>

</dataset>

我想不出要尝试的其他方法,删除了表并重新编译了Java代码,有什么想法吗?

回答:

您是否要尝试将ID已设置的Client放入数据库?ID列是只读的,只有数据库可以对其进行“写入”。

以上是 DBunit; 关于表/列名称区分大小写的困惑 的全部内容, 来源链接: utcz.com/qa/421038.html

回到顶部