这几天把项目的存储过程从oracle迁移到了达梦8,记录一下心得。国产数据库做到这样,已经算很了不起了,跟oracle兼容性确实很高。
但还是有一些细节没做好,主要是出错提示不友好,另外一个网上的资料也很少,出问题不好定位。(达梦的错误码比较简单,就是一个负数,不像oracle是ora-错误码,在百度时输入一个负数搜索信息,跟一长串错误码搜索效率差很远)
准备工作:
1 达梦的数据库管理工具默认不显示行号,也不能自动补全,需要手动设置。行号设置方法:在sql编辑页面,左侧空白竖栏(一般编辑器显示行号的地方)右击,选择”显示行号“。自动补全设置方法:在sql编辑页面空白处右击,选择“选项”,弹出的界面展开“查询分析器”,进入“编辑器”配置页面,选中“启用SQL输入助手”
2 装完达梦数据库后,需要启动oracle兼容模式sp_set_para_value(2,‘COMPATIBLE_MODE’,2);,另外,需要启动dbms_job包,SP_INIT_JOB_SYS(1)。改完设置后记得重启。
迁移碰上的问题及解决方法:
1 使用达梦的数据库迁移工具,把oracle的用户整体迁移到达梦后,是变成一个模式,而不是用户,使用起来不方便。
?解决方法:达梦数据库有用户和模式两个概念,库表和存储过程等是建在模式下面的,而用户则是独立的,与安全和权限功能挂钩,这跟mysql比较像。达梦的用户进行数据库操作时,默认使用同名的模式,想访问其它模式的元数据,需要显式加模