[SwiftEMU] Userid not defined in InventoryComponent.cs

Results 1 to 1 of 1
  1. #1
    Elite Member Evilsmoothie is offline
    Member +Rank
    May 2011 Join Date
    NorwayLocation
    153Posts

    [SwiftEMU] Userid not defined in InventoryComponent.cs

    Hello Ragezone!
    So I got this MYSQL error today:
    Code:
    Error in query: 
    SELECT items_users.item_id, items.base_id, items_extradata.data, items.rareid, items.group_data FROM items_users JOIN items ON (items.item_id = items_users.item_id) LEFT JOIN items_extradata ON (items_extradata.item_id = items.item_id) WHERE items_users.user_id = @userid
    MySql.Data.MySqlClient.MySqlException (0x80004005): Fatal error encountered during command execution. ---> MySql.Data.MySqlClient.MySqlException (0x80004005): Parameter '@userid' must be defined.
       at MySql.Data.MySqlClient.Statement.SerializeParameter(MySqlParameterCollection parameters, MySqlPacket packet, String parmName)
       at MySql.Data.MySqlClient.Statement.InternalBindParameters(String sql, MySqlParameterCollection parameters, MySqlPacket packet)
       at MySql.Data.MySqlClient.Statement.BindParameters()
       at MySql.Data.MySqlClient.PreparableStatement.Execute()
       at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
       at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
       at MySql.Data.MySqlClient.MySqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
       at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
       at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
       at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
       at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
       at Database_Manager.Database.Session_Details.QueryAdapter.getTable()
    As far as I understand, the userid isnt defined here (InventoryComponent.cs line 283):
    Code:
    using (IQueryAdapter dbClient = ButterflyEnvironment.GetDatabaseManager().getQueryreactor())
                {
                    dbClient.setQuery("SELECT items_users.item_id, items.base_id, items_extradata.data, items.rareid, items.group_data FROM items_users JOIN items ON (items.item_id = items_users.item_id) LEFT JOIN items_extradata ON (items_extradata.item_id = items.item_id) WHERE items_users.user_id = @userid");
                    dbClient.addParameter("userid", (int)this.UserId);
                    table = dbClient.getTable();
                }
    Do any of you nice people know how to define it if that is the problem? All help is greatly appreciated. :)

    Edit: It causes the user to lose it's furniture in the inventory when they reload.

    NEVERMIND. I fixed it..
    Last edited by Evilsmoothie; 11-08-13 at 12:22 AM.




Advertisement