找回密码
 注册账号

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

初学者课程:T3自学|T6自学|U8自学软件下载课件下载工具下载资料:通资料|U8资料|NC|培训|年结积分规则 | 使用常见问题Q&A
知识库:U8 | | NC | U9 | OA | 政务U8|U9|NCC|NC65|NC65客开|NCC客开新手必读 | 任务 | 快速增金币用友QQ群[微信群]
查看: 26994|回复: 22

[求助] 升级报错-2147217900

  [复制链接]
发表于 2012-10-30 12:38:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册账号

×
错误信息:
-2147217900
在被引用表 'code' 中没有与外键 'FK__Ap_InvCod__cInpC__006AEB82' 中的引用列列表匹配的主键或候选键。
执行如下语句时出错:
declare @tn nvarchar(100)
set @tn=N'T_'+replace(newid(),'-','_')
if exists (select * from dbo.sysobjects where id = object_id(N'[Ap_InvCode]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
begin
exec('Select iTag,cKeyCode,cInpCode1,cInpCode2,cInpCode3,cFlag into '+@tn+' from Ap_InvCode')
drop table [Ap_InvCode]
end
CREATE TABLE [Ap_InvCode] (
[Auto_ID] [int] IDENTITY (1, 1) NOT NULL ,
[iTag] [tinyint] NOT NULL ,
[cKeyCode] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[cInpCode1] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[cInpCode2] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[cInpCode3] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[cFlag] [nvarchar] (2) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[iTax] [money],
CONSTRAINT [aaaaaAp_InvCode_PK] PRIMARY KEY  NONCLUSTERED
(
  [cFlag],
  [iTag],
  [cKeyCode],
  [iTax]
)  ON [PRIMARY] ,
CONSTRAINT [FK__Ap_InvCod__cInpC__006AEB82] FOREIGN KEY
(
  [cInpCode2]
) REFERENCES [code] (
  [ccode]
),
CONSTRAINT [FK__Ap_InvCod__cInpC__015F0FBB] FOREIGN KEY
(
  [cInpCode3]
) REFERENCES [code] (
  [ccode]
),
CONSTRAINT [FK__Ap_InvCod__cInpC__025333F4] FOREIGN KEY
(
  [cInpCode1]
) REFERENCES [code] (
  [ccode]
)
) ON [PRIMARY]
if exists (select * from dbo.sysobjects where id = object_id(@tn) and OBJECTPROPERTY(id, N'IsUserTable') = 1)
begin
exec('insert into Ap_InvCode(iTag,cKeyCode,cInpCode1,cInpCode2,cInpCode3,cFlag,iTax)Select iTag,cKeyCode,cInpCode1,cInpCode2,cInpCode3,cFlag,-1 as iTax From '+@tn)
exec('drop table '+@tn)
end

发表于 2012-12-11 15:40:14 | 显示全部楼层
本帖最后由 fairyfox 于 2012-12-11 17:22 编辑

把ccode加为主键试试
alter TABLE [dbo].[code] add  PRIMARY KEY (ccode)

点评

这个是对的,  详情 回复 发表于 2018-12-12 15:03
回复 点赞 1 拍砖 0

使用道具 举报

发表于 2013-11-10 08:28:31 | 显示全部楼层
这是我刚升级碰到的问题

860[Main]升级

关闭了系统数据库连接

重新打开了系统数据库连接

开始读取升级列表

结束读取升级列表

开始事务

数据库名: UFDATA_002_2012
D:\U8SOFT\Admin\SQLFILE8600\Main\Ufdata\DSTR860_Public.sql
错误信息:
-2147217900
列 'code.ccode' 与外键 'FK__Rd_Style___cOppH__4620B061' 中引用列 'Rd_Style_ContraRef.cOppHead' 的长度不同。

执行如下语句时出错:
if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Rd_Style_ContraRef]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
CREATE TABLE [Rd_Style_ContraRef] (
        [cRdCode] [varchar] (5) COLLATE Chinese_PRC_CI_AS NOT NULL ,
        [cRdName] [varchar] (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,
        [iRdGrade] [tinyint] NOT NULL ,
        [bRdFlag] [int] NOT NULL ,
        [bRdEnd] [bit] NOT NULL ,
        [cOppHead] [varchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
        [pubufts] [timestamp] NULL ,
        CONSTRAINT [aaaaaRd_Style_ContraRef_PK] PRIMARY KEY  NONCLUSTERED
        (
                [cRdCode]
        )  ON [PRIMARY] ,
         FOREIGN KEY
        (
                [cOppHead]
        ) REFERENCES [code] (
                [ccode]
        )
) ON [PRIMARY]



效率测试报告:开始升级UFDATA_002_2012数据库

Update_DelRepeat.sql,2013-11-09 15:44:59 -- 2013-11-09 15:45:02,0小时0分钟3秒。

    升级起始时间:2013-11-09 15:44:58,结束时间:2013-11-09 15:45:10,0小时0分钟12秒。



我把表FK__Rd_Style从11.0的数据库中倒出来,问题解决了,861升870时报楼主一样的错误
回复 点赞 拍砖

使用道具 举报

发表于 2013-11-11 09:01:22 | 显示全部楼层
楼主的code表ccode列主键取消了吧,我取消一次就出现这问题,有主键的是提示长度不同,没有主键就是你那提示,长度不同的问题解决了,改code表ccode列字段长度为15.能升级到890,90升级10.0时有个错误,

对象 'PK_CW_WideProjCode' 依赖于 列 'AccountCode'。

执行如下语句时出错:
alter TABLE [CW_WideProjCode]
alter column [AccountCode] [nvarchar](15) NOT NULL


右键设计code表,ccode列改为[varchar] (15)
右键设计CW_WideProjCode表,AccountCode列改为[nvarchar](15)
准备升级时,先改那两个表,能直接升级成功。
回复 点赞 拍砖

使用道具 举报

发表于 2018-12-12 15:03:50 | 显示全部楼层
fairyfox 发表于 2012-12-11 15:40
把ccode加为主键试试
alter TABLE [dbo].[code] add  PRIMARY KEY (ccode)

这个是对的,
回复 点赞 拍砖

使用道具 举报

发表于 2015-4-18 20:24:42 | 显示全部楼层
求答案,遇到同样的问题了,都研究一天也木结果!!!
回复 点赞 拍砖

使用道具 举报

发表于 2012-10-30 12:46:34 | 显示全部楼层
{:soso_e116:}{:soso_e116:}{:soso_e116:}路过触发器问题

点评

应该怎么解决  详情 回复 发表于 2012-10-31 09:39
回复 点赞 拍砖

使用道具 举报

发表于 2012-10-30 16:49:30 | 显示全部楼层
你也遇到这问题了呀,呵呵,我也刚遇到,是852升级10.1的时候,在861出现这个问题了

点评

你是怎么解决的  详情 回复 发表于 2012-10-31 09:41
回复 点赞 拍砖

使用道具 举报

 楼主| 发表于 2012-10-31 09:39:35 | 显示全部楼层
回复 点赞 拍砖

使用道具 举报

 楼主| 发表于 2012-10-31 09:41:11 | 显示全部楼层
gemzw 发表于 2012-10-30 16:49
你也遇到这问题了呀,呵呵,我也刚遇到,是852升级10.1的时候,在861出现这个问题了

你是怎么解决的
回复 点赞 拍砖

使用道具 举报

发表于 2012-12-4 14:11:36 | 显示全部楼层
同求解决方案
回复 点赞 拍砖

使用道具 举报

发表于 2012-12-11 15:23:10 | 显示全部楼层
NND 吊人胃口
回复 点赞 拍砖

使用道具 举报

发表于 2012-12-12 14:14:50 | 显示全部楼层
NND 出现很多啊  根源在哪里?
回复 点赞 拍砖

使用道具 举报

发表于 2012-12-12 15:28:50 | 显示全部楼层
路过,来学习,强烈支持
回复 点赞 拍砖

使用道具 举报

发表于 2013-1-14 10:49:44 | 显示全部楼层
同求解决方案。具体点的
回复 点赞 拍砖

使用道具 举报

发表于 2013-1-24 12:43:40 | 显示全部楼层
能具体说说解决方法吗
回复 点赞 拍砖

使用道具 举报

发表于 2013-3-5 11:59:05 | 显示全部楼层
加主键就可以了么?
回复 点赞 拍砖

使用道具 举报

发表于 2013-11-10 08:13:13 | 显示全部楼层
我昨天碰到的一样问题,正在想办法
回复 点赞 拍砖

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|站长微信|Archiver|手机版|小黑屋|用友之家 ( 蜀ICP备07505338号|51072502110008 )

GMT+8, 2024-5-11 03:39 , Processed in 0.041627 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表