Applies ToSQL Server Compact 4.0

Simptomi

Pieņemiet, ka ir norādīts intervāla intervāls , kas maksimālais sekunžu skaits savienojuma virknē, pirms veiktās transakcijas ir sapludinātas ar disku programmā Microsoft SQL Server Compact 4,0. Šādā gadījumā apņemšanās darījumiem var būt nepieciešams ilgāks laiks nekā skalošanas intervāls , kas jāskalo uz diska vai pat nav jāskalo diskā. Turklāt datu zudums rodas, ja ir anormāla programmas izbeigšana.

Risinājums

Labojumfails, kas novērš šo problēmu, ir iekļauts labojumfailu atjauninājumu pakotnē SQL Server Compact 4,0 1. servisa pakotnei. Lai iegūtu papildinformāciju par to, kā iegūt šo pieprasījumu labojumfailu atjaunināšanas pakotni SQL Server Compact 4,0, noklikšķiniet uz šī raksta numura, lai skatītu Microsoft zināšanu bāzes rakstu:

2960153 Pēc pieprasījuma labojumfaila atjaunināšanas pakotne SQL Server Compact 4,0 1. servisa pakotnei

Risinājums

Lai novērstu šo problēmu, izmantojiet CommitMode. Immediate , lai nekavējoties sapludinātu izmaiņas, nevis paļaujoties uz flush intervālu. Tālāk redzamajā piemērā tiek parādīts šāds paņēmiens: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)

Statusa

Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.