Applies ToSQL Server Compact 4.0

Příznaky

Předpokládejme, že jste v připojovacím řetězci zadali interval vyprázdnění v maximálním počtu sekund před vyprázdněním transakcí na disk v Microsoft SQL serveru Compact 4,0. V této situaci může trvat delší dobu, než bude interval vyprázdnění vyprázdnit na disk nebo nemusí být vyprázdnit na disk. Ke ztrátě dat dojde navíc v případě abnormálního ukončení programu.

Řešení

Oprava hotfix, která tento problém řeší, je součástí balíčku aktualizace hotfix na vyžádání pro SQL Server Compact 4,0 Service Pack 1. Další informace o tom, jak získat tento balíček aktualizace na vyžádání hotfix pro SQL Server Compact 4,0, najdete v následujícím článku znalostní báze Microsoft Knowledge Base:

2960153 Balíček aktualizace oprav hotfix pro SQL Server Compact 4,0 Service Pack 1

Alternativní řešení

Tento problém vyřešíte tak, že pomocí CommitMode. Immediate zapíšete změny okamžitě a nespoléháte na interval vyprázdnění. Tento postup ukazuje následující ukázkový kód:conn.ConnectionString = "Data Source = c:\temp\SalesData.sdf; " conn.Open() Dim tx As SqlCeTransaction tx = conn.BeginTransaction(System.Data.IsolationLevel.ReadCommitted) com = conn.CreateCommand() com.Transaction = tx Dim a As Integer a = 101 While (a <= 1000) com.CommandText = "insert into Orders values (" + Convert.ToString(a) + ", 'best', 200)" com.ExecuteNonQuery() a = a + 1 End While tx.Commit(CommitMode.Immediate)

Stav

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.