Symptômes

Supposez que vous ayez spécifié l' intervalle de vidage dans le nombre maximal de secondes de la chaîne de connexion avant que les transactions validées soient vidées sur le disque dans Microsoft SQL Server Compact 4,0. Dans cette situation, il est possible que les transactions validées aient plus de temps que l' intervalle de vidage à vider sur le disque ou qu’elles ne soient pas vidées sur le disque. Par ailleurs, une perte de données se produit en cas de résiliation anormale du programme.

Résolution

Le correctif qui résout ce problème est inclus dans un package de mise à jour des correctifs à la demande pour SQL Server Compact 4,0 Service Pack 1. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour des correctifs à la demande pour SQL Server Compact 4,0, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

2960153 Package de mise à jour des correctifs à la demande pour SQL Server Compact 4,0 Service Pack 1

Solution de contournement

Pour contourner ce problème, utilisez CommitMode. immediat pour vider immédiatement les modifications au lieu de dépendre de l' intervalle de vidage. L’exemple de code suivant illustre cette technique :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)

Statut

Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.

Besoin d’aide ?

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoindre Microsoft Insider

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la traduction ?
Qu’est-ce qui a affecté votre expérience ?

Nous vous remercions pour vos commentaires.

×