sql sever 将 expression 转换为数据类型 int 时出现算术溢出错误。

sql sever 将 expression 转换为数据类型 int 时出现算术溢出错误。,第1张

sql sever 将 expression 转换为数据类型 int 时出现算术溢出错误是设置错误造成的,解决方法为:

1、首先打开,sql  sever 2008,选取你要登录的服务器,还有登录身份。然后单击确认。

2、打开visuil studio 2010 ,打开你要进行连接的文件或者解决方案,我这里就在最近使用的文件里打开。

3、sever 对应的是你连接数据库的服务器名,然后写上你的数据库名,最后一个就是windows身份自动登录的一个方式,如果你使用用户名密码登录可以写上user=“用户名” password=“密码”就可以了。

4、用户名密码与数据库匹配之后就会进入管理员页面。否则就会提示用户名或者密码错误。

最近发现云服务器上的Oracle 11g在导出时报错,如下:

正在导出后期表活动

正在导出实体化视图

正在导出快照日志

EXP-00008: 遇到 ORACLE 错误 1455

ORA-01455: 转换列溢出整数数据类型

EXP-00000: 导出终止失败

从网上搜了半天,有很多种说法:

1 版本问题,说10g的导出11g的就有这个问题,但是我的客户端和服务器采用的是相同的版本,所以不存在版本问题。有的还说是32位和64位的问题,我的Oracle是32位,客户端也是32位,同一台设备上,所以应该是和版本无关。

2 Exp加参数,很多人提出加各种参数,包括:

Direct=y

INDEXES=n STATISTICS=none

不管是单独还是联合使用,都无效还是报错。

3、数据问题,我干脆不导出数据,只导出数据库结构,仍然报错,看来与数据无关。

静下来考虑了半天,看到是快照日志出错,但是我的数据库中没有建立快照啊?后来反应过来了,虽然没有快照,但是建立有物化视图(MATERIALIZED VIEW),会不会是物化视图的问题?

删除物化视图后导出,一切正常,说明还是物化视图导出导致的错误,真是个大坑啊,这些导出文件在重新导入时都要报错,备份工作算是白做了。幸好发现得早!

2015318

今天某用户的数据导出又开始报上述错误了,检查了一下,发现某个物化视图采用了提交更新模式:

CREATE MATERIALIZED VIEW V_INBED_BILL_CHECK_TOTAL

REFRESH COMPLETE ON COMMIT

AS

由于必须开启日志:

--建立物化视图日志,将涉及的字段序列化

CREATE MATERIALIZED VIEW LOG ON T_CHECK_BILL WITH ROWID,

SEQUENCE(ORG_ID,BATCH_ID,SI_TYPE_ID,HOSP_ID,CHECK_RULE_ID,INBED_BILL_ID,PRES_BILL_ID,PSN_ID,CHECK_ITEM_AMT,CHECK_ITEM_CNT,CHECK_DEDUC_AMT)

INCLUDING NEW VALUES;

今天重新建立物化视图,全部采用手工更新模式,所以重建物化视图为:

CREATE MATERIALIZED VIEW V_INBED_BILL_CHECK_TOTAL

REFRESH ON DEMAND

AS

在导出数据时,删除物化视图后导出仍然报错,发现没有执行原来的删除命令:

DROP MATERIALIZED VIEW LOG ON T_CHECK_BILL;

执行该命令后,报错消失。

所以正确的理解应该是:

建立物化视图过程中,如果开启了物化视图日志,导出时将会报”ORA-01455”的错误,导致导出失败。删除物化视图日志可以解决该问题。

以上就是关于sql sever 将 expression 转换为数据类型 int 时出现算术溢出错误。全部的内容,包括:sql sever 将 expression 转换为数据类型 int 时出现算术溢出错误。、Oracle 11g 导出数据报 “ORA-01455: 转换列溢出整数数据类型” 和exp-00008、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9775602.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存