iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL5.7 迁移到 KingBase V8 (人大金仓数据库)
  • 510
分享到

MySQL5.7 迁移到 KingBase V8 (人大金仓数据库)

MySQL5.7迁移到KingBaseV8(人大金仓数据库) 2016-02-14 21:02:58 510人浏览 无得
摘要

记录项目中 Mysql 数据库迁移到 Kingbase 的所遇到的问题和解决办法 LAST_INSERT_ID()   kingbase没有last_insert_id(), 可以在插入语句末尾加入returning [字段名]

MySQL5.7 迁移到 KingBase V8 (人大金仓数据库)

记录项目Mysql 数据库迁移到 Kingbase 的所遇到的问题和解决办法

  1. LAST_INSERT_ID()

  kingbase没有last_insert_id(), 可以在插入语句末尾加入returning [字段名] 关键字获取

insert into signer_info (user_id, user_name) values( 123, "wang") returning id;

  但是在mybatis上使用标签进行上面sql的插入的话,会发现并不能得到我们想要的结果,数据会正常的插入到数据库中,但是我们期望的返回值并不是当前插入对象的id值,而是-1



    
    select LAST_INSERT_ID()
    
    INSERT INTO signer_info 
        user_id,  user_name,
    values
        #{userId,jdbcType=INTEGER},#{userName,jdbcType=VARCHAR}

  应该修改为


  这样接口方法的返回值就为当前插入值的id值。

  1. 已有表和系统表名称重复

  需要迁移的数据库中有张表名称为sys_config,查询的时候查询结果不符合我们的预期,经咨询金仓售后人员后得知和系统表重名...
解决问题方法如下:

alter database [数据库名] set search_path to "$user", [模式名,] public, sys, sys_catalog, pg_catalog;
select sys_reload_conf();

  执行完sql后要生效得重启下服务,重新获取数据库连接。

  1. 传空字符串被当作null
##查看空字符串的处理方式―如果为 on则空字符串与会当做null处理,需要修改为 off
show ora_input_emptystr_isnull;
##将此设置关闭
alter database casecheck_new set ora_input_emptystr_isnull to "off " ;
##重新载入配置
select sys_reload_conf( ) ;
  1. 其他问题

  其他问题可参考这篇博客
  --kingbase V8(人大金仓数据库) 与 mysql 的 sql 差异对比 与 数据迁移

原文地址:https://www.cnblogs.com/huizhipeng/arcHive/2022/04/27/16200631.html

您可能感兴趣的文档:

--结束END--

本文标题: MySQL5.7 迁移到 KingBase V8 (人大金仓数据库)

本文链接: https://www.lsjlt.com/news/9293.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • oracle怎么显示表的字段
    如何显示 oracle 表的字段 在 Oracle 数据库中,可以使用 DESC 命令显示表的字段。 语法: DESC table_name 参数: table_name:要显示字段的表...
    99+
    2024-05-14
    oracle
  • oracle怎么看所有的表
    在 oracle 数据库中查看所有表的步骤:连接到数据库运行查询:select table_name from user_tables; 如何使用 Oracle 查看所有表 ...
    99+
    2024-05-14
    oracle
  • oracle怎么显示行数
    如何使用 oracle 显示行数 在 Oracle 数据库中,有两种主要方法可以显示行数: 1. 使用 COUNT 函数 SELECT COUNT(*) FROM table_n...
    99+
    2024-05-14
    oracle
  • oracle怎么显示百分比
    oracle中显示百分比的方法有:使用百分号“%”;使用to_char()函数;使用format()函数(oracle 18c及更高版本);创建自定义函数。 Oracle 显...
    99+
    2024-05-14
    oracle
  • oracle怎么删除列
    oracle 中删除列的方法有两种:1)使用 alter table table_name drop column column_name 语句;2)使用 drop colum...
    99+
    2024-05-14
    oracle
  • sql怎么查看表的索引
    通过查询系统表,可以获取表的索引信息,包括索引名称、是否唯一、索引类型、索引列和行数。常用系统表有:mysql 的 information_schema.statistics、postg...
    99+
    2024-05-14
    mysql oracle
  • sql怎么查看索引
    您可以使用 sql 通过以下方法查看索引:show indexes 语句:显示表中定义的索引列表及其信息。explain 语句:显示查询计划,其中包含用于执行查询的索引。informat...
    99+
    2024-05-14
  • sql怎么查看存储过程
    如何查看 sql 存储过程的源代码:使用 show create procedure 语句直接获取创建脚本。查询 information_schema.routines 表的 routi...
    99+
    2024-05-14
  • sql怎么查看视图表
    要查看视图表,可以使用以下步骤:使用 select 语句获取视图中的数据。使用 desc 语句查看视图的架构。使用 explain 语句分析视图的执行计划。使用 dbms 提供...
    99+
    2024-05-14
    oracle python
  • sql怎么查看创建的视图
    可以通过sql查询查看已创建的视图,具体步骤包括:连接到数据库并执行查询select * from information_schema.views;查询结果将显示视图的名称、...
    99+
    2024-05-14
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作