Oprava: Úpravy tabulky s sebe DRI, které je v pohledu indexovaných Angažované může způsobit zpráva 8624

Překlady článku Překlady článku
ID článku: 288174 - Produkty, které se vztahují k tomuto článku.
Chyba #: 350912 (SHILOH_bugs)
Rozbalit všechny záložky | Minimalizovat všechny záložky

Příznaky

Když uživatel odstraní nebo aktualizuje záznam na serveru SQL Server, může být zvýšena vnitřní chybě:
Server: Zpráva 8624, úroveň 16 stavu 1, řádek 1
Vnitřní chyba serveru SQL Server.
Chybová zpráva je vrácena klientovi. Žádné chybové zprávy nebo přístup narušení informace jsou zapisovány do protokoly chyb serveru SQL Server. Záznam není odstraněn nebo aktualizován.

Příčina

K této chybě může dojít pouze při člen tabulky indexovaného zobrazení je aktualizovány nebo odstraněny, a existuje omezení DRI CASCADE mezi tabulkou a ostatními tabulkami v zobrazení. Zkontrolujte, pokud tabulka je definována s kaskádové odstranění nebo aktualizace omezení. Poté zkontrolujte Pokud je zobrazení s indexem, který závisí na tabulkách.

Řešení

Tento problém vyřešíte pomocí nejnovější aktualizace service pack pro SQL Server 2000. Další informace získáte následujícím článku báze Microsoft Knowledge Base:
290211Soubor INF: Jak získat nejnovější aktualizaci Service Pack pro SQL Server 2000

Jak potíže obejít

Chcete-li tento problém vyřešit, odebrat omezení DRI CASCADE nebo indexu v zobrazení.

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém na serveru SQL Server 2000. Tento problém byl poprvé opraven v aktualizaci SQL Server 2000 Service Pack 1.

Další informace

Tento problém reprodukovat, spusťte následující skript:
set ansi_nulls on
set ansi_padding on
set ansi_warnings on
set arithabort on
set concat_null_yields_null on
set quoted_identifier on
set numeric_roundabort off
go

CREATE TABLE [dbo].[adults] (
	[AdultId] [int] NOT NULL ,
	[FName] [varchar] (10) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
	[LName] [varchar] (25) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL 
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[kids] (
	[AdultId] [int] NOT NULL ,
	[KidId] [int] NOT NULL ,
	[FName] [varchar] (10) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
	[LName] [varchar] (25) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL 
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[adults] WITH NOCHECK ADD 
	CONSTRAINT [PK_adults] PRIMARY KEY  CLUSTERED 
	(
		[AdultId]
	)  ON [PRIMARY] 
GO

ALTER TABLE [dbo].[kids] ADD 
	CONSTRAINT [FK_kids_adults] FOREIGN KEY 
	(
		[AdultId]
	) REFERENCES [dbo].[adults] (
		[AdultId]
	) ON DELETE CASCADE  ON UPDATE CASCADE 
GO



SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  View dbo.v_AdultsWithKids    Script Date: 1/2/01 4:30:41 AM ******/ 

create view dbo.v_AdultsWithKids
with schemabinding
as

select a.adultid, a.fname as 'Adult First Name', a.lname as 'Adult Last Name', k.kidid, k.fname as 'Kid First Name', k.lname as 'Kid Last Name'
from dbo.adults a inner join dbo.kids k 
on a.adultid = k.adultid

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO


set ANSI_PADDING,ANSI_WARNINGS,CONCAT_NULL_YIELDS_NULL,ARITHABORT,QUOTED_IDENTIFIER,ANSI_NULLS on 
GO

set NUMERIC_ROUNDABORT off 
GO

 CREATE  UNIQUE  CLUSTERED  INDEX [iv_cl_kidid] ON [dbo].[v_AdultsWithKids]([kidid]) ON [PRIMARY]
GO

insert into adults values (1, 'Bob', 'Johnson')
insert into kids values (1, 1, 'Joe', 'Johnson')
insert into kids values (1, 2, 'Jack', 'Johnson')
insert into kids values (1, 3, 'June', 'Johnson')

insert into adults values (2, 'Mary', 'Thomas')
insert into kids values (2, 4, 'John', 'Thomas')

insert into adults values (3, 'Susan', 'Sist')
go

delete from adults where adultid = 2
go

set NUMERIC_ROUNDABORT off set arithabort  OFF 
GO

SET QUOTED_IDENTIFIER OFF 
 
SET ANSI_NULLS ON 
GO
				

Vlastnosti

ID článku: 288174 - Poslední aktualizace: 6. listopadu 2003 - Revize: 3.2
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 2000 Standard Edition
Klíčová slova: 
kbmt kbbug kbfix kbsqlserv2000sp1fix KB288174 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:288174

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com