This commit is contained in:
Tleiades Hax
2007-10-13 09:10:53 +00:00
parent 1232eb1c58
commit e8c1de8e72
4 changed files with 31 additions and 7 deletions

View File

@@ -40,9 +40,28 @@ namespace OpenSim.Framework.Data.MySQL
}
public AssetBase FetchAsset(LLUUID uuid)
public AssetBase FetchAsset(LLUUID assetID)
{
throw new Exception("The method or operation is not implemented.");
AssetBase asset = null;
MySqlCommand cmd = new MySqlCommand("SELECT name, description, assetType, invType, local, temporary, data FROM assets WHERE id=?id", _dbConnection.Connection);
MySqlParameter p = cmd.Parameters.Add("?id", MySqlDbType.Binary, 16);
p.Value = assetID.GetBytes();
using (MySqlDataReader dbReader = cmd.ExecuteReader(System.Data.CommandBehavior.SingleRow))
{
if (dbReader.Read())
{
asset = new AssetBase();
asset.Data = (byte[])dbReader["data"];
asset.Description = (string)dbReader["description"];
asset.FullID = assetID;
asset.InvType = (sbyte)dbReader["invType"];
asset.Local = ((sbyte)dbReader["local"])!=0?true:false;
asset.Name = (string)dbReader["name"];
asset.Type = (sbyte)dbReader["assetType"];
}
}
return asset;
}
public void CreateAsset(AssetBase asset)

View File

@@ -225,10 +225,13 @@ namespace OpenSim.Framework.Data.MySQL
MySqlDataReader reader = result.ExecuteReader();
List<InventoryFolderBase> items = new List<InventoryFolderBase>();
while(reader.Read())
while (reader.Read())
items.Add(readInventoryFolder(reader));
InventoryFolderBase rootFolder = items[0]; //should only be one folder with parent set to zero (the root one).
InventoryFolderBase rootFolder = null;
if (items.Count > 0)
rootFolder = items[0]; //should only be one folder with parent set to zero (the root one).
reader.Close();
result.Dispose();

View File

@@ -2,8 +2,8 @@ CREATE TABLE `assets` (
`id` binary(16) NOT NULL,
`name` varchar(64) NOT NULL,
`description` varchar(64) NOT NULL,
`assetType` smallint(5) unsigned NOT NULL,
`invType` smallint(5) unsigned NOT NULL,
`assetType` TINYINT(4) NOT NULL,
`invType` TINYINT(4) NOT NULL,
`local` tinyint(1) NOT NULL,
`temporary` tinyint(1) NOT NULL,
`data` longblob NOT NULL,