hibernate 框架 oracle 迁移 到mysql

一、数据库迁移:(下面的内容还可以深入探究,目前是能用就行。)

  1、数据库迁移用Navicat数据传输,在传输的过程中可能报错。

      问题 1、oracle数据库字段类型CLOB 在传输过程中会出错。

               解决:数据类型改为varchar2。

      问题 2、修改过程中:报错,不允许直接修改,

               报错内容:invalid modification of columns

               解决方法:先删除这个字段,然后再重新添加

     2、数据库迁移好了,修改hibernate的实体和数据库表配置。

           第一、修改表名,mysql 默认是表名区分大小写,数据传输过来是小写,全部改成小写。(注意:sql查询的时候不用区分)

           第二、修改主键配置,如果是uuid就不用修改,Long类型要修改,

        <id name="id" type="java.lang.Long">
            <column name="ID" length="11" />
            <generator class="org.hibernate.id.enhanced.SequenceStyleGenerator">  
                <!--初始值,默认是1-->  
                <param name="initial_value">1000</param>  
                <!--自增大小,默认是1-->  
                <param name="increment_siz">1</param>  
                <!--sequence的名字,默认是"hibernate_sequence"-->  
                <param name="sequence_name">hibernate_sequence</param>  
            </generator>
        </id>

 

      3、遇到的问题:

           a、查询报错:org.hibernate.MappingException: No Dialect mapping for JDBC type: -1

               原因:hibernate查询默认不支持text字段类型,改为varchar,有支持的方法。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值