我正在尝试使用其脚本文件重新创建和读取HSQL数据库。在其中一个表格中,我在一对列上有唯一约束。
某些数据行包含其中一个列的重复字段,但末尾有一个空格。例如:' Java'和' Java'
所以基本上它们形成了两个不同的数据集,但是hsql报告了这两个数据集的**完整性约束违规**错误
数据库由使用HSQLDB的应用程序在内部构成,因此我无法修改脚本文件。 (虽然我试图通过替换unicode字符来测试空间角色,但它也没有用。)
有没有办法告诉hsqldb将空格的文本值视为不同的数据集。
注意:我使用Java访问和读取hsql数据库,并且我通过HSQLDB的嵌入式swing GUI管理器测试了脚本文件,结果在两种情况下都是相同的。
答案 0 :(得分:2)
您的问题有两种选择:
对于案例二,您可以改变hsql的行为。
查看文档,特别是:SET DATABASE COLLATION SQL_TEXT NO PAD