PRB: Cannot Update Distributed Partitioned Views When You Alter Base Table Constraints (270013)
The information in this article applies to:
- Microsoft SQL Server 2000 (all editions)
This article was previously published under Q270013 SYMPTOMS A distributed partitioned view joins horizontally
partitioned data from a set of member tables across one or more SQL Servers,
which makes the data appear as if it is from one table. If you run any
statements that modify the data in the partitioned view after you first disable
and then enable the check constraint on any of the involved base tables, you
may receive the following error message: Msg 4436, Level
16, State 12, Line 1 UNION ALL view 'v1' is not updatable because a
partitioning column was not found. CAUSE When you disable a check constraint, SQL Server marks the
constraint as untrusted, which means that the server does not check for
consistency when a user modifies rows that may violate the check
constraint.
Later, when this check constraint is enabled, SQL Server
maintains its status as untrusted because it cannot validate the data for that
column. As a result, the Query Optimizer does not use these constraints to
prune out unwanted branches in the partitioned view or treat such columns as
range partitioned columns. This behavior is by design. WORKAROUND To work around this problem, drop and then re-create the
check constraint that was altered. You can use the following query to identify
the untrusted check contraints in a database: SELECT name, status FROM sysobjects WHERE xtype = 'C' AND status &0x800 = 0x800
Modification Type: | Major | Last Reviewed: | 10/3/2003 |
---|
Keywords: | kbprb KB270013 |
---|
|