Je travaille avec Sqlite.
Lorsque je veux insérer des lignes dans une table, je me ramasse de temps en temps ce message dans la fenêtre d'exécution :
Voici un exemple de mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SQLite error (10): delayed 150ms for lock/sharing conflict
Avant cette fonction j'effectue un delete pour vider la table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 try { OracleCommand cmdOracle = varGlobals.dbOracle.CreateCommand(); cmdOracle.CommandText = "SELECT * FROM SITES"; OracleDataReader drOra = cmdOracle.ExecuteReader(); varGlobals.dbSqlite.BeginTransaction(); while (drOra.Read()) { using (SQLiteCommand SqliteCmd = new SQLiteCommand(varGlobals.dbSqlite.SqliteConnection)) { SqliteCmd.CommandText = "INSERT INTO SITES (NUMSITE,CODESITE,LIBELLE) VALUES(@NUMSITE,@CODESITE,@LIBELLE)"; SqliteCmd.Parameters.Add("@NUMSITE", DbType.Int32); SqliteCmd.Parameters[0].Value = int.Parse(drOra["NUMSITE"].ToString()); SqliteCmd.Parameters.Add("@CODESITE", DbType.String); SqliteCmd.Parameters[1].Value = drOra["CODESITE"].ToString(); SqliteCmd.Parameters.Add("@LIBELLE", DbType.String); SqliteCmd.Parameters[2].Value = drOra["LIBELLE"].ToString(); SqliteCmd.ExecuteNonQuery(); } } varGlobals.dbSqlite.CommitTransaction(); drOra.Close(); drOra.Dispose(); } catch (Exception ex) { throw ex; }
Quelqu'un a t'il une idée ?
Partager