* Apply mantis patches 2939, 2980 and 2995

* All these are necessary to get MSSQL working again
* Thanks to StrawberryFride for pointing this out
0.6.1-post-fixes
Justin Clarke Casey 2009-01-14 15:15:10 +00:00
parent ce6fecbc93
commit 6686040e76
4 changed files with 594 additions and 629 deletions

View File

@ -171,6 +171,10 @@ namespace OpenSim.Data.MSSQL
{ {
return SqlDbType.Float; return SqlDbType.Float;
} }
if (type == typeof(Single))
{
return SqlDbType.Float;
}
if (type == typeof(int)) if (type == typeof(int))
{ {
return SqlDbType.Int; return SqlDbType.Int;
@ -185,7 +189,7 @@ namespace OpenSim.Data.MSSQL
} }
if (type == typeof(sbyte)) if (type == typeof(sbyte))
{ {
return SqlDbType.TinyInt; return SqlDbType.Int;
} }
if (type == typeof(Byte[])) if (type == typeof(Byte[]))
{ {
@ -215,6 +219,10 @@ namespace OpenSim.Data.MSSQL
{ {
return value.ToString(); return value.ToString();
} }
if (valueType == typeof(OpenMetaverse.UUID))
{
return value.ToString();
}
if (valueType == typeof(bool)) if (valueType == typeof(bool))
{ {
return (bool)value ? 1 : 0; return (bool)value ? 1 : 0;
@ -223,6 +231,10 @@ namespace OpenSim.Data.MSSQL
{ {
return value; return value;
} }
if (valueType == typeof(int))
{
return value;
}
return value; return value;
} }
@ -269,6 +281,11 @@ namespace OpenSim.Data.MSSQL
private static readonly Dictionary<string, string> emptyDictionary = new Dictionary<string, string>(); private static readonly Dictionary<string, string> emptyDictionary = new Dictionary<string, string>();
/// <summary>
/// Run a query and return a sql db command
/// </summary>
/// <param name="sql">The SQL query.</param>
/// <returns></returns>
internal AutoClosingSqlCommand Query(string sql) internal AutoClosingSqlCommand Query(string sql)
{ {
return Query(sql, emptyDictionary); return Query(sql, emptyDictionary);

File diff suppressed because it is too large Load Diff

View File

@ -482,8 +482,8 @@ namespace OpenSim.Data.MSSQL
while (reader.Read()) while (reader.Read())
{ {
FriendRegionInfo fri = new FriendRegionInfo(); FriendRegionInfo fri = new FriendRegionInfo();
fri.isOnline = (sbyte)reader["agentOnline"] != 0; fri.isOnline = (byte)reader["agentOnline"] != 0;
fri.regionHandle = (ulong)reader["currentHandle"]; fri.regionHandle = Convert.ToUInt64(reader["currentHandle"].ToString());
infos[uuid] = fri; infos[uuid] = fri;
} }

View File

@ -0,0 +1,5 @@
BEGIN TRANSACTION
ALTER TABLE prims ADD LinkNumber integer not null default 0
COMMIT