aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/SQLite
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Data/SQLite')
-rw-r--r--OpenSim/Data/SQLite/SQLiteGenericTableHandler.cs28
-rw-r--r--OpenSim/Data/SQLite/SQLiteXInventoryData.cs10
2 files changed, 6 insertions, 32 deletions
diff --git a/OpenSim/Data/SQLite/SQLiteGenericTableHandler.cs b/OpenSim/Data/SQLite/SQLiteGenericTableHandler.cs
index 3fb2d3f..0d7b001 100644
--- a/OpenSim/Data/SQLite/SQLiteGenericTableHandler.cs
+++ b/OpenSim/Data/SQLite/SQLiteGenericTableHandler.cs
@@ -258,33 +258,17 @@ namespace OpenSim.Data.SQLite
258 return false; 258 return false;
259 } 259 }
260 260
261 public virtual bool Delete(string field, string key) 261 public bool Delete(string field, string val)
262 { 262 {
263 return Delete(new string[] { field }, new string[] { key });
264 }
265
266 public bool Delete(string[] fields, string[] keys)
267 {
268 if (fields.Length != keys.Length)
269 return false;
270
271 List<string> terms = new List<string>();
272
273 SqliteCommand cmd = new SqliteCommand(); 263 SqliteCommand cmd = new SqliteCommand();
274 264
275 for (int i = 0 ; i < fields.Length ; i++) 265 cmd.CommandText = String.Format("delete from {0} where `{1}` = :{1}", m_Realm, field);
276 { 266 cmd.Parameters.Add(new SqliteParameter(field, val));
277 cmd.Parameters.Add(new SqliteParameter(":" + fields[i], keys[i]));
278 terms.Add("`" + fields[i] + "` = :" + fields[i]);
279 }
280
281 string where = String.Join(" and ", terms.ToArray());
282
283 string query = String.Format("delete * from {0} where {1}", m_Realm, where);
284 267
285 cmd.CommandText = query; 268 if (ExecuteNonQuery(cmd, m_Connection) > 0)
269 return true;
286 270
287 return ExecuteNonQuery(cmd, m_Connection) > 0; 271 return false;
288 } 272 }
289 } 273 }
290} 274}
diff --git a/OpenSim/Data/SQLite/SQLiteXInventoryData.cs b/OpenSim/Data/SQLite/SQLiteXInventoryData.cs
index 02edc30..ccbd86e 100644
--- a/OpenSim/Data/SQLite/SQLiteXInventoryData.cs
+++ b/OpenSim/Data/SQLite/SQLiteXInventoryData.cs
@@ -91,21 +91,11 @@ namespace OpenSim.Data.SQLite
91 return m_Folders.Delete(field, val); 91 return m_Folders.Delete(field, val);
92 } 92 }
93 93
94 public bool DeleteFolders(string[] fields, string[] vals)
95 {
96 return m_Folders.Delete(fields, vals);
97 }
98
99 public bool DeleteItems(string field, string val) 94 public bool DeleteItems(string field, string val)
100 { 95 {
101 return m_Items.Delete(field, val); 96 return m_Items.Delete(field, val);
102 } 97 }
103 98
104 public bool DeleteItems(string[] fields, string[] vals)
105 {
106 return m_Items.Delete(fields, vals);
107 }
108
109 public bool MoveItem(string id, string newParent) 99 public bool MoveItem(string id, string newParent)
110 { 100 {
111 return m_Items.MoveItem(id, newParent); 101 return m_Items.MoveItem(id, newParent);