using System.Collections.Generic; using System.Threading.Tasks; using MySql.Data.MySqlClient; namespace Framework.Server { public static class MySql { private static MySqlConnection _connection; public static void Initialize(string connectionString) { _connection = new MySqlConnection(connectionString); } public static async Task Execute(string query) { await _connection.OpenAsync(); var cmd = new MySqlCommand(query, _connection); await cmd.ExecuteNonQueryAsync(); await _connection.CloseAsync(); } public static async Task FetchAll(string query) { await _connection.OpenAsync(); var cmd = new MySqlCommand(query, _connection); var result = await cmd.ExecuteReaderAsync(); List data = new List(); foreach (var record in result) { data.Add(record); } await _connection.CloseAsync(); return data.ToArray(); } public static async Task FetchOne(string query) { var result = await FetchAll(query); return result[0]; } public static async void CreateTables(params string[] querys) { var query = string.Join(";", querys); await Execute(query); } } }