void InsertItem(CharItemsData entry) { string query = "INSERT INTO character_create_items"; query += " (character_create_id, item_id, count, equipped) "; query += "VALUES "; query += " (" + entry.charId + "," + entry.itemId + "," + entry.count + "," + entry.equipped + ") "; // Setup the register data List<Register> update = new List<Register> (); foreach (string field in entry.fields.Keys) { update.Add (entry.fieldToRegister (field)); } int itemID = -1; itemID = DatabasePack.Insert (DatabasePack.contentDatabasePrefix, query, update); entry.id = itemID; }
// Update existing entries in the table based on the iddemo_table void UpdateItem(CharItemsData entry) { // Setup the update query string query = "UPDATE character_create_items"; query += " SET "; query += entry.UpdateList (); query += " WHERE id=?id"; // Setup the register data List<Register> update = new List<Register> (); foreach (string field in entry.fields.Keys) { update.Add (entry.fieldToRegister (field)); } update.Add (new Register ("id", "?id", MySqlDbType.Int32, entry.id.ToString (), Register.TypesOfField.Int)); // Update the database DatabasePack.Update (DatabasePack.contentDatabasePrefix, query, update); }
// Load Stats public void LoadCharacterItems(CharData charData) { List<CharItemsData> charItems = new List<CharItemsData>(); // Read all entries from the table string query = "SELECT * FROM character_create_items WHERE character_create_id = " + charData.id; // If there is a row, clear it. if (rows != null) rows.Clear (); // Load data rows = DatabasePack.LoadData (DatabasePack.contentDatabasePrefix, query); // Read all the data if ((rows!=null) && (rows.Count > 0)) { foreach (Dictionary<string,string> data in rows) { CharItemsData display = new CharItemsData (); display.id = int.Parse (data ["id"]); display.charId = int.Parse (data ["character_create_id"]); display.itemId = int.Parse (data ["item_id"]); display.count = int.Parse (data ["count"]); display.equipped = bool.Parse(data["equipped"]); charItems.Add(display); } } charData.charItems = charItems; }