diff options
author | David Walter Seikel | 2016-11-03 21:44:39 +1000 |
---|---|---|
committer | David Walter Seikel | 2016-11-03 21:44:39 +1000 |
commit | 134f86e8d5c414409631b25b8c6f0ee45fbd8631 (patch) | |
tree | 216b89d3fb89acfb81be1e440c25c41ab09fa96d /OpenSim/Data/PGSQL/PGSQLEstateData.cs | |
parent | More changing to production grid. Double oops. (diff) | |
download | opensim-SC_OLD-134f86e8d5c414409631b25b8c6f0ee45fbd8631.zip opensim-SC_OLD-134f86e8d5c414409631b25b8c6f0ee45fbd8631.tar.gz opensim-SC_OLD-134f86e8d5c414409631b25b8c6f0ee45fbd8631.tar.bz2 opensim-SC_OLD-134f86e8d5c414409631b25b8c6f0ee45fbd8631.tar.xz |
Initial update to OpenSim 0.8.2.1 source code.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Data/PGSQL/PGSQLEstateData.cs (renamed from OpenSim/Data/MSSQL/MSSQLEstateData.cs) | 197 |
1 files changed, 111 insertions, 86 deletions
diff --git a/OpenSim/Data/MSSQL/MSSQLEstateData.cs b/OpenSim/Data/PGSQL/PGSQLEstateData.cs index 1faa249..b5ca235 100644 --- a/OpenSim/Data/MSSQL/MSSQLEstateData.cs +++ b/OpenSim/Data/PGSQL/PGSQLEstateData.cs | |||
@@ -27,38 +27,44 @@ | |||
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using System.Collections.Generic; | 29 | using System.Collections.Generic; |
30 | using System.Data; | ||
31 | using System.Data.SqlClient; | ||
32 | using System.Reflection; | 30 | using System.Reflection; |
33 | using log4net; | 31 | using log4net; |
34 | using OpenMetaverse; | 32 | using OpenMetaverse; |
35 | using OpenSim.Framework; | 33 | using OpenSim.Framework; |
36 | using OpenSim.Region.Framework.Interfaces; | 34 | using OpenSim.Region.Framework.Interfaces; |
35 | using System.Data; | ||
36 | using Npgsql; | ||
37 | using NpgsqlTypes; | ||
37 | 38 | ||
38 | namespace OpenSim.Data.MSSQL | 39 | namespace OpenSim.Data.PGSQL |
39 | { | 40 | { |
40 | public class MSSQLEstateStore : IEstateDataStore | 41 | public class PGSQLEstateStore : IEstateDataStore |
41 | { | 42 | { |
42 | private const string _migrationStore = "EstateStore"; | 43 | private const string _migrationStore = "EstateStore"; |
43 | 44 | ||
44 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 45 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
45 | 46 | ||
46 | private MSSQLManager _Database; | 47 | private PGSQLManager _Database; |
47 | private string m_connectionString; | 48 | private string m_connectionString; |
48 | private FieldInfo[] _Fields; | 49 | private FieldInfo[] _Fields; |
49 | private Dictionary<string, FieldInfo> _FieldMap = new Dictionary<string, FieldInfo>(); | 50 | private Dictionary<string, FieldInfo> _FieldMap = new Dictionary<string, FieldInfo>(); |
50 | 51 | ||
51 | #region Public methods | 52 | #region Public methods |
52 | 53 | ||
53 | public MSSQLEstateStore() | 54 | public PGSQLEstateStore() |
54 | { | 55 | { |
55 | } | 56 | } |
56 | 57 | ||
57 | public MSSQLEstateStore(string connectionString) | 58 | public PGSQLEstateStore(string connectionString) |
58 | { | 59 | { |
59 | Initialise(connectionString); | 60 | Initialise(connectionString); |
60 | } | 61 | } |
61 | 62 | ||
63 | protected virtual Assembly Assembly | ||
64 | { | ||
65 | get { return GetType().Assembly; } | ||
66 | } | ||
67 | |||
62 | /// <summary> | 68 | /// <summary> |
63 | /// Initialises the estatedata class. | 69 | /// Initialises the estatedata class. |
64 | /// </summary> | 70 | /// </summary> |
@@ -68,11 +74,11 @@ namespace OpenSim.Data.MSSQL | |||
68 | if (!string.IsNullOrEmpty(connectionString)) | 74 | if (!string.IsNullOrEmpty(connectionString)) |
69 | { | 75 | { |
70 | m_connectionString = connectionString; | 76 | m_connectionString = connectionString; |
71 | _Database = new MSSQLManager(connectionString); | 77 | _Database = new PGSQLManager(connectionString); |
72 | } | 78 | } |
73 | 79 | ||
74 | //Migration settings | 80 | //Migration settings |
75 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 81 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
76 | { | 82 | { |
77 | conn.Open(); | 83 | conn.Open(); |
78 | Migration m = new Migration(conn, GetType().Assembly, "EstateStore"); | 84 | Migration m = new Migration(conn, GetType().Assembly, "EstateStore"); |
@@ -101,15 +107,17 @@ namespace OpenSim.Data.MSSQL | |||
101 | { | 107 | { |
102 | EstateSettings es = new EstateSettings(); | 108 | EstateSettings es = new EstateSettings(); |
103 | 109 | ||
104 | string sql = "select estate_settings." + String.Join(",estate_settings.", FieldList) + " from estate_map left join estate_settings on estate_map.EstateID = estate_settings.EstateID where estate_settings.EstateID is not null and RegionID = @RegionID"; | 110 | string sql = "select estate_settings.\"" + String.Join("\",estate_settings.\"", FieldList) + |
111 | "\" from estate_map left join estate_settings on estate_map.\"EstateID\" = estate_settings.\"EstateID\" " + | ||
112 | " where estate_settings.\"EstateID\" is not null and \"RegionID\" = :RegionID"; | ||
105 | 113 | ||
106 | bool insertEstate = false; | 114 | bool insertEstate = false; |
107 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 115 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
108 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 116 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
109 | { | 117 | { |
110 | cmd.Parameters.Add(_Database.CreateParameter("@RegionID", regionID)); | 118 | cmd.Parameters.Add(_Database.CreateParameter("RegionID", regionID)); |
111 | conn.Open(); | 119 | conn.Open(); |
112 | using (SqlDataReader reader = cmd.ExecuteReader()) | 120 | using (NpgsqlDataReader reader = cmd.ExecuteReader()) |
113 | { | 121 | { |
114 | if (reader.Read()) | 122 | if (reader.Read()) |
115 | { | 123 | { |
@@ -119,11 +127,15 @@ namespace OpenSim.Data.MSSQL | |||
119 | object v = reader[name]; | 127 | object v = reader[name]; |
120 | if (f.FieldType == typeof(bool)) | 128 | if (f.FieldType == typeof(bool)) |
121 | { | 129 | { |
122 | f.SetValue(es, Convert.ToInt32(v) != 0); | 130 | f.SetValue(es, v); |
123 | } | 131 | } |
124 | else if (f.FieldType == typeof(UUID)) | 132 | else if (f.FieldType == typeof(UUID)) |
125 | { | 133 | { |
126 | f.SetValue(es, new UUID((Guid)v)); // uuid); | 134 | UUID estUUID = UUID.Zero; |
135 | |||
136 | UUID.TryParse(v.ToString(), out estUUID); | ||
137 | |||
138 | f.SetValue(es, estUUID); | ||
127 | } | 139 | } |
128 | else if (f.FieldType == typeof(string)) | 140 | else if (f.FieldType == typeof(string)) |
129 | { | 141 | { |
@@ -187,25 +199,37 @@ namespace OpenSim.Data.MSSQL | |||
187 | 199 | ||
188 | names.Remove("EstateID"); | 200 | names.Remove("EstateID"); |
189 | 201 | ||
190 | string sql = string.Format("insert into estate_settings ({0}) values ( @{1})", String.Join(",", names.ToArray()), String.Join(", @", names.ToArray())); | 202 | string sql = string.Format("insert into estate_settings (\"{0}\") values ( :{1} )", String.Join("\",\"", names.ToArray()), String.Join(", :", names.ToArray())); |
191 | 203 | ||
192 | //_Log.Debug("[DB ESTATE]: SQL: " + sql); | 204 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
193 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 205 | using (NpgsqlCommand insertCommand = new NpgsqlCommand(sql, conn)) |
194 | using (SqlCommand insertCommand = new SqlCommand(sql, conn)) | ||
195 | { | 206 | { |
196 | insertCommand.CommandText = sql + " SET @ID = SCOPE_IDENTITY()"; | 207 | insertCommand.CommandText = sql; |
197 | 208 | ||
198 | foreach (string name in names) | 209 | foreach (string name in names) |
199 | { | 210 | { |
200 | insertCommand.Parameters.Add(_Database.CreateParameter("@" + name, _FieldMap[name].GetValue(es))); | 211 | insertCommand.Parameters.Add(_Database.CreateParameter("" + name, _FieldMap[name].GetValue(es))); |
201 | } | 212 | } |
202 | SqlParameter idParameter = new SqlParameter("@ID", SqlDbType.Int); | 213 | //NpgsqlParameter idParameter = new NpgsqlParameter("ID", SqlDbType.Int); |
203 | idParameter.Direction = ParameterDirection.Output; | 214 | //idParameter.Direction = ParameterDirection.Output; |
204 | insertCommand.Parameters.Add(idParameter); | 215 | //insertCommand.Parameters.Add(idParameter); |
205 | conn.Open(); | 216 | conn.Open(); |
206 | insertCommand.ExecuteNonQuery(); | ||
207 | 217 | ||
208 | es.EstateID = Convert.ToUInt32(idParameter.Value); | 218 | es.EstateID = 100; |
219 | |||
220 | if (insertCommand.ExecuteNonQuery() > 0) | ||
221 | { | ||
222 | insertCommand.CommandText = "Select cast(lastval() as int) as ID ;"; | ||
223 | |||
224 | using (NpgsqlDataReader result = insertCommand.ExecuteReader()) | ||
225 | { | ||
226 | if (result.Read()) | ||
227 | { | ||
228 | es.EstateID = (uint)result.GetInt32(0); | ||
229 | } | ||
230 | } | ||
231 | } | ||
232 | |||
209 | } | 233 | } |
210 | 234 | ||
211 | //TODO check if this is needed?? | 235 | //TODO check if this is needed?? |
@@ -225,20 +249,20 @@ namespace OpenSim.Data.MSSQL | |||
225 | string sql = string.Format("UPDATE estate_settings SET "); | 249 | string sql = string.Format("UPDATE estate_settings SET "); |
226 | foreach (string name in names) | 250 | foreach (string name in names) |
227 | { | 251 | { |
228 | sql += name + " = @" + name + ", "; | 252 | sql += "\"" + name + "\" = :" + name + ", "; |
229 | } | 253 | } |
230 | sql = sql.Remove(sql.LastIndexOf(",")); | 254 | sql = sql.Remove(sql.LastIndexOf(",")); |
231 | sql += " WHERE EstateID = @EstateID"; | 255 | sql += " WHERE \"EstateID\" = :EstateID"; |
232 | 256 | ||
233 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 257 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
234 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 258 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
235 | { | 259 | { |
236 | foreach (string name in names) | 260 | foreach (string name in names) |
237 | { | 261 | { |
238 | cmd.Parameters.Add(_Database.CreateParameter("@" + name, _FieldMap[name].GetValue(es))); | 262 | cmd.Parameters.Add(_Database.CreateParameter("" + name, _FieldMap[name].GetValue(es))); |
239 | } | 263 | } |
240 | 264 | ||
241 | cmd.Parameters.Add(_Database.CreateParameter("@EstateID", es.EstateID)); | 265 | cmd.Parameters.Add(_Database.CreateParameter("EstateID", es.EstateID)); |
242 | conn.Open(); | 266 | conn.Open(); |
243 | cmd.ExecuteNonQuery(); | 267 | cmd.ExecuteNonQuery(); |
244 | } | 268 | } |
@@ -262,16 +286,16 @@ namespace OpenSim.Data.MSSQL | |||
262 | { | 286 | { |
263 | es.ClearBans(); | 287 | es.ClearBans(); |
264 | 288 | ||
265 | string sql = "select bannedUUID from estateban where EstateID = @EstateID"; | 289 | string sql = "select \"bannedUUID\" from estateban where \"EstateID\" = :EstateID"; |
266 | 290 | ||
267 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 291 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
268 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 292 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
269 | { | 293 | { |
270 | SqlParameter idParameter = new SqlParameter("@EstateID", SqlDbType.Int); | 294 | NpgsqlParameter idParameter = new NpgsqlParameter("EstateID", DbType.Int32); |
271 | idParameter.Value = es.EstateID; | 295 | idParameter.Value = es.EstateID; |
272 | cmd.Parameters.Add(idParameter); | 296 | cmd.Parameters.Add(idParameter); |
273 | conn.Open(); | 297 | conn.Open(); |
274 | using (SqlDataReader reader = cmd.ExecuteReader()) | 298 | using (NpgsqlDataReader reader = cmd.ExecuteReader()) |
275 | { | 299 | { |
276 | while (reader.Read()) | 300 | while (reader.Read()) |
277 | { | 301 | { |
@@ -290,14 +314,14 @@ namespace OpenSim.Data.MSSQL | |||
290 | { | 314 | { |
291 | List<UUID> uuids = new List<UUID>(); | 315 | List<UUID> uuids = new List<UUID>(); |
292 | 316 | ||
293 | string sql = string.Format("select uuid from {0} where EstateID = @EstateID", table); | 317 | string sql = string.Format("select uuid from {0} where \"EstateID\" = :EstateID", table); |
294 | 318 | ||
295 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 319 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
296 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 320 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
297 | { | 321 | { |
298 | cmd.Parameters.Add(_Database.CreateParameter("@EstateID", estateID)); | 322 | cmd.Parameters.Add(_Database.CreateParameter("EstateID", estateID)); |
299 | conn.Open(); | 323 | conn.Open(); |
300 | using (SqlDataReader reader = cmd.ExecuteReader()) | 324 | using (NpgsqlDataReader reader = cmd.ExecuteReader()) |
301 | { | 325 | { |
302 | while (reader.Read()) | 326 | while (reader.Read()) |
303 | { | 327 | { |
@@ -312,21 +336,21 @@ namespace OpenSim.Data.MSSQL | |||
312 | private void SaveBanList(EstateSettings es) | 336 | private void SaveBanList(EstateSettings es) |
313 | { | 337 | { |
314 | //Delete first | 338 | //Delete first |
315 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 339 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
316 | { | 340 | { |
317 | conn.Open(); | 341 | conn.Open(); |
318 | using (SqlCommand cmd = conn.CreateCommand()) | 342 | using (NpgsqlCommand cmd = conn.CreateCommand()) |
319 | { | 343 | { |
320 | cmd.CommandText = "delete from estateban where EstateID = @EstateID"; | 344 | cmd.CommandText = "delete from estateban where \"EstateID\" = :EstateID"; |
321 | cmd.Parameters.AddWithValue("@EstateID", (int)es.EstateID); | 345 | cmd.Parameters.AddWithValue("EstateID", (int)es.EstateID); |
322 | cmd.ExecuteNonQuery(); | 346 | cmd.ExecuteNonQuery(); |
323 | 347 | ||
324 | //Insert after | 348 | //Insert after |
325 | cmd.CommandText = "insert into estateban (EstateID, bannedUUID,bannedIp, bannedIpHostMask, bannedNameMask) values ( @EstateID, @bannedUUID, '','','' )"; | 349 | cmd.CommandText = "insert into estateban (\"EstateID\", \"bannedUUID\",\"bannedIp\", \"bannedIpHostMask\", \"bannedNameMask\") values ( :EstateID, :bannedUUID, '','','' )"; |
326 | cmd.Parameters.AddWithValue("@bannedUUID", Guid.Empty); | 350 | cmd.Parameters.AddWithValue("bannedUUID", Guid.Empty); |
327 | foreach (EstateBan b in es.EstateBans) | 351 | foreach (EstateBan b in es.EstateBans) |
328 | { | 352 | { |
329 | cmd.Parameters["@bannedUUID"].Value = b.BannedUserID.Guid; | 353 | cmd.Parameters["bannedUUID"].Value = b.BannedUserID.Guid; |
330 | cmd.ExecuteNonQuery(); | 354 | cmd.ExecuteNonQuery(); |
331 | } | 355 | } |
332 | } | 356 | } |
@@ -335,20 +359,20 @@ namespace OpenSim.Data.MSSQL | |||
335 | 359 | ||
336 | private void SaveUUIDList(uint estateID, string table, UUID[] data) | 360 | private void SaveUUIDList(uint estateID, string table, UUID[] data) |
337 | { | 361 | { |
338 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 362 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
339 | { | 363 | { |
340 | conn.Open(); | 364 | conn.Open(); |
341 | using (SqlCommand cmd = conn.CreateCommand()) | 365 | using (NpgsqlCommand cmd = conn.CreateCommand()) |
342 | { | 366 | { |
343 | cmd.Parameters.AddWithValue("@EstateID", (int)estateID); | 367 | cmd.Parameters.AddWithValue("EstateID", (int)estateID); |
344 | cmd.CommandText = string.Format("delete from {0} where EstateID = @EstateID", table); | 368 | cmd.CommandText = string.Format("delete from {0} where \"EstateID\" = :EstateID", table); |
345 | cmd.ExecuteNonQuery(); | 369 | cmd.ExecuteNonQuery(); |
346 | 370 | ||
347 | cmd.CommandText = string.Format("insert into {0} (EstateID, uuid) values ( @EstateID, @uuid )", table); | 371 | cmd.CommandText = string.Format("insert into {0} (\"EstateID\", uuid) values ( :EstateID, :uuid )", table); |
348 | cmd.Parameters.AddWithValue("@uuid", Guid.Empty); | 372 | cmd.Parameters.AddWithValue("uuid", Guid.Empty); |
349 | foreach (UUID uuid in data) | 373 | foreach (UUID uuid in data) |
350 | { | 374 | { |
351 | cmd.Parameters["@uuid"].Value = uuid.Guid; //.ToString(); //TODO check if this works | 375 | cmd.Parameters["uuid"].Value = uuid.Guid; //.ToString(); //TODO check if this works |
352 | cmd.ExecuteNonQuery(); | 376 | cmd.ExecuteNonQuery(); |
353 | } | 377 | } |
354 | } | 378 | } |
@@ -358,14 +382,14 @@ namespace OpenSim.Data.MSSQL | |||
358 | public EstateSettings LoadEstateSettings(int estateID) | 382 | public EstateSettings LoadEstateSettings(int estateID) |
359 | { | 383 | { |
360 | EstateSettings es = new EstateSettings(); | 384 | EstateSettings es = new EstateSettings(); |
361 | string sql = "select estate_settings." + String.Join(",estate_settings.", FieldList) + " from estate_settings where EstateID = @EstateID"; | 385 | string sql = "select estate_settings.\"" + String.Join("\",estate_settings.\"", FieldList) + "\" from estate_settings where \"EstateID\" = :EstateID"; |
362 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 386 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
363 | { | 387 | { |
364 | conn.Open(); | 388 | conn.Open(); |
365 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 389 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
366 | { | 390 | { |
367 | cmd.Parameters.AddWithValue("@EstateID", (int)estateID); | 391 | cmd.Parameters.AddWithValue("EstateID", (int)estateID); |
368 | using (SqlDataReader reader = cmd.ExecuteReader()) | 392 | using (NpgsqlDataReader reader = cmd.ExecuteReader()) |
369 | { | 393 | { |
370 | if (reader.Read()) | 394 | if (reader.Read()) |
371 | { | 395 | { |
@@ -428,13 +452,13 @@ namespace OpenSim.Data.MSSQL | |||
428 | public List<int> GetEstates(string search) | 452 | public List<int> GetEstates(string search) |
429 | { | 453 | { |
430 | List<int> result = new List<int>(); | 454 | List<int> result = new List<int>(); |
431 | string sql = "select estateID from estate_settings where EstateName = @EstateName"; | 455 | string sql = "select \"EstateID\" from estate_settings where lower(\"EstateName\") = lower(:EstateName)"; |
432 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 456 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
433 | { | 457 | { |
434 | conn.Open(); | 458 | conn.Open(); |
435 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 459 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
436 | { | 460 | { |
437 | cmd.Parameters.AddWithValue("@EstateName", search); | 461 | cmd.Parameters.AddWithValue("EstateName", search); |
438 | 462 | ||
439 | using (IDataReader reader = cmd.ExecuteReader()) | 463 | using (IDataReader reader = cmd.ExecuteReader()) |
440 | { | 464 | { |
@@ -453,11 +477,11 @@ namespace OpenSim.Data.MSSQL | |||
453 | public List<int> GetEstatesAll() | 477 | public List<int> GetEstatesAll() |
454 | { | 478 | { |
455 | List<int> result = new List<int>(); | 479 | List<int> result = new List<int>(); |
456 | string sql = "select estateID from estate_settings"; | 480 | string sql = "select \"EstateID\" from estate_settings"; |
457 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 481 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
458 | { | 482 | { |
459 | conn.Open(); | 483 | conn.Open(); |
460 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 484 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
461 | { | 485 | { |
462 | using (IDataReader reader = cmd.ExecuteReader()) | 486 | using (IDataReader reader = cmd.ExecuteReader()) |
463 | { | 487 | { |
@@ -476,13 +500,13 @@ namespace OpenSim.Data.MSSQL | |||
476 | public List<int> GetEstatesByOwner(UUID ownerID) | 500 | public List<int> GetEstatesByOwner(UUID ownerID) |
477 | { | 501 | { |
478 | List<int> result = new List<int>(); | 502 | List<int> result = new List<int>(); |
479 | string sql = "select estateID from estate_settings where EstateOwner = @EstateOwner"; | 503 | string sql = "select \"EstateID\" from estate_settings where \"EstateOwner\" = :EstateOwner"; |
480 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 504 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
481 | { | 505 | { |
482 | conn.Open(); | 506 | conn.Open(); |
483 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 507 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
484 | { | 508 | { |
485 | cmd.Parameters.AddWithValue("@EstateOwner", ownerID); | 509 | cmd.Parameters.AddWithValue("EstateOwner", ownerID); |
486 | 510 | ||
487 | using (IDataReader reader = cmd.ExecuteReader()) | 511 | using (IDataReader reader = cmd.ExecuteReader()) |
488 | { | 512 | { |
@@ -500,28 +524,29 @@ namespace OpenSim.Data.MSSQL | |||
500 | 524 | ||
501 | public bool LinkRegion(UUID regionID, int estateID) | 525 | public bool LinkRegion(UUID regionID, int estateID) |
502 | { | 526 | { |
503 | string deleteSQL = "delete from estate_map where RegionID = @RegionID"; | 527 | string deleteSQL = "delete from estate_map where \"RegionID\" = :RegionID"; |
504 | string insertSQL = "insert into estate_map values (@RegionID, @EstateID)"; | 528 | string insertSQL = "insert into estate_map values (:RegionID, :EstateID)"; |
505 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 529 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
506 | { | 530 | { |
507 | conn.Open(); | 531 | conn.Open(); |
508 | SqlTransaction transaction = conn.BeginTransaction(); | 532 | |
533 | NpgsqlTransaction transaction = conn.BeginTransaction(); | ||
509 | 534 | ||
510 | try | 535 | try |
511 | { | 536 | { |
512 | using (SqlCommand cmd = new SqlCommand(deleteSQL, conn)) | 537 | using (NpgsqlCommand cmd = new NpgsqlCommand(deleteSQL, conn)) |
513 | { | 538 | { |
514 | cmd.Transaction = transaction; | 539 | cmd.Transaction = transaction; |
515 | cmd.Parameters.AddWithValue("@RegionID", regionID.Guid); | 540 | cmd.Parameters.AddWithValue("RegionID", regionID.Guid); |
516 | 541 | ||
517 | cmd.ExecuteNonQuery(); | 542 | cmd.ExecuteNonQuery(); |
518 | } | 543 | } |
519 | 544 | ||
520 | using (SqlCommand cmd = new SqlCommand(insertSQL, conn)) | 545 | using (NpgsqlCommand cmd = new NpgsqlCommand(insertSQL, conn)) |
521 | { | 546 | { |
522 | cmd.Transaction = transaction; | 547 | cmd.Transaction = transaction; |
523 | cmd.Parameters.AddWithValue("@RegionID", regionID.Guid); | 548 | cmd.Parameters.AddWithValue("RegionID", regionID.Guid); |
524 | cmd.Parameters.AddWithValue("@EstateID", estateID); | 549 | cmd.Parameters.AddWithValue("EstateID", estateID); |
525 | 550 | ||
526 | int ret = cmd.ExecuteNonQuery(); | 551 | int ret = cmd.ExecuteNonQuery(); |
527 | 552 | ||
@@ -545,13 +570,13 @@ namespace OpenSim.Data.MSSQL | |||
545 | public List<UUID> GetRegions(int estateID) | 570 | public List<UUID> GetRegions(int estateID) |
546 | { | 571 | { |
547 | List<UUID> result = new List<UUID>(); | 572 | List<UUID> result = new List<UUID>(); |
548 | string sql = "select RegionID from estate_map where EstateID = @EstateID"; | 573 | string sql = "select \"RegionID\" from estate_map where \"EstateID\" = :EstateID"; |
549 | using (SqlConnection conn = new SqlConnection(m_connectionString)) | 574 | using (NpgsqlConnection conn = new NpgsqlConnection(m_connectionString)) |
550 | { | 575 | { |
551 | conn.Open(); | 576 | conn.Open(); |
552 | using (SqlCommand cmd = new SqlCommand(sql, conn)) | 577 | using (NpgsqlCommand cmd = new NpgsqlCommand(sql, conn)) |
553 | { | 578 | { |
554 | cmd.Parameters.AddWithValue("@EstateID", estateID); | 579 | cmd.Parameters.AddWithValue("EstateID", estateID); |
555 | 580 | ||
556 | using (IDataReader reader = cmd.ExecuteReader()) | 581 | using (IDataReader reader = cmd.ExecuteReader()) |
557 | { | 582 | { |