bool InsertQuestEx(MySqlConnection connection, IInfoProvider2 dbq) { //Save to the stream IDatabaseQuestStream collection = dbq.createDatabaseQuestStream(); MySqlCommand command; try { byte[] value = collection.questCollection; if (value != null) { command = new MySqlCommand(_query_87, connection); command.Parameters.AddWithValue("CharId", collection.CharacterId); command.Parameters.AddWithValue("State", value); return command.ExecuteNonQuery() > 0; } else { command = new MySqlCommand(_query_56, connection); command.Parameters.AddWithValue("CharId", collection.CharacterId); return command.ExecuteNonQuery() > 0; } } catch (MySqlException e) { __dbtracelog.WriteError("Database", e.Message); return false; } }
bool LoadQuestEx(MySqlConnection connection, IInfoProvider2 dbq, bool continueOnError) { IDatabaseQuestStream collection = dbq.createDatabaseQuestStream(); MySqlCommand command = new MySqlCommand(); command.Connection = connection; command.CommandText = _query_59; command.Parameters.AddWithValue("CharId", collection.CharacterId); MySqlDataReader mreader = null; try { mreader = command.ExecuteReader(); // argument CommandBehavior.SingleRow removed (Darkin) while (mreader.Read()) { if (!mreader.IsDBNull(0)) { collection.questCollection = (byte[])mreader.GetValue(0); return true; } return true; } __dbtracelog.WriteError("Database", "player quest-data of player with id {0} is missing", collection.CharacterId); return continueOnError; } catch (MySqlException e) { __dbtracelog.WriteError("Database", e.Message); return false; } finally { if (mreader != null) mreader.Close(); } }