Java HSQLDB Spring用户缺少权限

Java HSQLDB Spring用户缺少权限,java,spring,spring-mvc,hsqldb,Java,Spring,Spring Mvc,Hsqldb,我的项目使用JDBC和Spring3 随着我的小项目的发展,我需要一些测试。我想为我的DAO层创建集成测试,但我无法让它与嵌入式HSQL数据库一起工作 以下是我得到的错误:由以下原因引起:org.hsqldb.hsqldb异常:用户缺少权限或找不到对象:name 我的配置: CREATE SCHEMA GIVEMEASHOW -- USE_CASE TABLE CREATE TABLE SHOW ( ID BIGINT

我的项目使用JDBC和Spring3

随着我的小项目的发展,我需要一些测试。我想为我的DAO层创建集成测试,但我无法让它与嵌入式HSQL数据库一起工作

以下是我得到的错误:由以下原因引起:org.hsqldb.hsqldb异常:用户缺少权限或找不到对象:name

我的配置:

CREATE SCHEMA GIVEMEASHOW 

-- USE_CASE TABLE
CREATE TABLE SHOW (
    ID                          BIGINT          GENERATED BY DEFAULT AS IDENTITY,
    NAME                        VARCHAR(255)    DEFAULT NULL,
    ICON_URL                    VARCHAR(255)    DEFAULT NULL,
    PRIMARY KEY (ID),
    CONSTRAINT UNIQUE_SHOW_NAME UNIQUE (NAME)
);
我的测试:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations =
{ "classpath:gmas-db-cfg-test.xml" })
public class ShowDaoIT
{
    public static Logger    LOGGER  = Logger.getLogger(ShowDaoIT.class.getName());

    @Inject
    ShowDao                 showDao;

    @Test
    public void saveIT()
    {
        Show show = new Show();
        show.setIconUrl("show1_banner.png");
        show.setName("show1");
        showDao.save(show);
        showDao.list();
    }
}
dao方法:

@Override
    public void save(final Show show)
    {
        LOGGER.info("Saving a new Show");
        try
        {
            final String query = "insert into " + TABLE_NAME + " (name, icon_url) " + "VALUES (?, ?)";

            jdbcTemplate.update(new PreparedStatementCreator()
            {

                public PreparedStatement createPreparedStatement(Connection con) throws SQLException
                {
                    PreparedStatement ps = con.prepareStatement(query, new String[]
                    { "name", "icon_url" });
                    ps.setString(1, show.getName());
                    ps.setString(2, show.getIconUrl());
                    return ps;
                }
            }, keyHolder);
            show.setId(keyHolder.getKey().intValue());

        } catch (final Exception e)
        {
            e.printStackTrace();
        }
    }
我的mysql数据库一切正常,我的网站正常运行。我只是无法在dao层上设置集成测试


感谢您的帮助。

使用HSQLDB服务器进行测试。如果需要,服务器可以为mem:数据库提供服务