HSQLDALINE到MySQL5INNODBALINE,Hibernate

HSQLDALINE到MySQL5INNODBALINE,Hibernate,mysql,hibernate,spring,tomcat,innodb,Mysql,Hibernate,Spring,Tomcat,Innodb,在一些项目中,我一直使用HSQLdialent作为我数据库的方言(MySQL,大多数表都是InnoDB),而Hibernate从来没有出现过任何问题 在使用Spring 3.1.0和Hibernate 3.6.9的项目中使用setMaxResults()时,我遇到了MySQLSyntaxErrorException,我仍然想知道这是从何而来的 我的XML配置servlet: <bean id="myDataSource" class="org.apache.commons.dbcp.Bas

在一些项目中,我一直使用HSQLdialent作为我数据库的方言(MySQL,大多数表都是InnoDB),而Hibernate从来没有出现过任何问题

在使用Spring 3.1.0和Hibernate 3.6.9的项目中使用setMaxResults()时,我遇到了MySQLSyntaxErrorException,我仍然想知道这是从何而来的

我的XML配置servlet:

<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource"
    destroy-method="close">
    <property name="driverClassName" value="org.hsqldb.jdbcDriver" />
    <property name="url" value="jdbc:mysql://localhost:3306/product" />
    <property name="username" value="root" />
    <property name="password" value="***************" />
</bean>

<bean id="mySessionFactory"
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource" ref="myDataSource" />
        <property name="mappingResources">
            <list>
                <value>com/social/admin/beans/DevDebugLogs.hbm.xml</value>
                <value>com/social/admin/beans/Users.hbm.xml</value>
                ...
            </list>
        </property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect"> org.hibernate.dialect.HSQLDialect</prop>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.hbm2ddl.auto">create</prop>
            </props>
        </property>
    </bean>

    <bean name="/logs.html" class="com.social.admin.controllers.DebugManagerAdmin"> 
        <property name="sessionFactory" ref="mySessionFactory" /> 
    </bean> 

com/social/admin/beans/DevDebugLogs.hbm.xml
com/social/admin/beans/Users.hbm.xml
...
org.hibernate.dialogue.hsql方言
真的
创造

我试着从HSQLDALINE切换到MySQL5INNODBALINE,它破坏了我数据库的很大一部分,删除了条目,删除了表!!!!!!!十)


有人能帮我吗?

为了避免删除表和数据,请确保将配置中的Hibernate切换到
update
更新

这将帮助您摆脱数据消失的问题


切换到
mysql5innodbdialent
不会导致任何重大问题。我已经在我的每个项目中使用它很长时间了。唯一可能发生的事情是,某些查询可能在不同方言下运行不完全相同,但您可以在运行时或测试期间对其进行检查。

“它破坏了我数据库的大部分”,在启动时(
create
),或通过您实现的某些函数运行?在启动时,可能是“create”谢谢,我将切换并检查(希望)我的数据库是否存活。