Problem: 空间数据库升级失败,报"Could not update server tables and stored procedures. Error (-238)"错误

文章编号 : 39035
软件: ArcSDE 9.3.1, 10 ArcGIS - ArcEditor 10 ArcGIS - ArcInfo 10
操作系统: Linux Red Hat AS/ES 3.0, AS/ES 4.0, AS/ES 5.0 HP Tru64 UNIX 5.1a, 5.1b Windows 2003Server, Vista, 2008Server, Win 7 AIX 5.1, 5.3, 6.0, 6.1 Solaris 8, 9, 10 HP-UX 11.11, 11.23, 11.31 Linux-SUSE Server 9, Server 10, Server 11 HP-UX Itanium 11.23, 11.31
已邀请:

易智瑞技术支持

赞同来自:

错误信息: 空间数据库升级到10或者后续版本的时候会报如下错误。 "Error(Check Datasets): Could not update server tables and stored procedures. Error (-238)" The sde_setup.log shows these details: [<timestamp>] Error: DBMS view exists (-238). Tables not converted to DBS. Error: -238 [<timestamp>] SDE release upgrade not completed(-238). [<timestamp>] ERROR installing/upgrading ArcSDE, Error = -238
原因: 某个启动归原因档的feature class上创建的多版本视图不存在了,最有可能的原因:

.视图被用户使用SQL意外的删除了
.数据库升级的时候,视图意外的丢掉了


解决方法: 解决方法:
对这个问题的解决方法是确定并且删除这些孤儿视图。

1.执行以下的SQL语句
select owner, table_name, imv_view_name from table_registry

where upper(table_name) || '_H' in

(select upper(table_name) from table_registry where Upper(table_name) like '%_H')

and upper(Imv_view_name) = upper(table_name) || '_MV'

对于SQL Server数据库,执行以下语句:
select owner, imv_view_name from sde_table_registry

where upper(table_name) || '_H' in

(select upper(table_name) from sde_table_registry where Upper(table_name) like '%_H')

and upper(Imv_view_name) = upper(table_name) || '_MV'

2. 确定查询结果中的view是否为孤儿视图。

3. 使用sdetable -o delete_mv_view -t <table_name> 删除这些孤儿视图

4. 重新升级数据库

5. 有必要的话可以重建这些多版本视图。


创建时间:2011-06-07
最近更新: 2011-07-06


原文链接
http://support.esrichina.com.c ... .html

要回复问题请先登录注册