20230827
This commit is contained in:
@@ -26,7 +26,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Количество затронутых строк</returns>
|
||||
public async Task<int> ExecuteAsync (string sql, object values)
|
||||
public async Task<int> ExecuteAsync (string sql, object? values = null)
|
||||
{
|
||||
// Подключаемся к БД
|
||||
await using MySqlConnection connection = new(ConnectionString);
|
||||
@@ -44,7 +44,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Количество затронутых строк</returns>
|
||||
public int Execute (string sql, object values) => ExecuteAsync(sql, values).GetAwaiter().GetResult();
|
||||
public int Execute (string sql, object? values = null) => ExecuteAsync(sql, values).GetAwaiter().GetResult();
|
||||
|
||||
/// <summary>
|
||||
/// Запрос
|
||||
@@ -53,7 +53,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
public async Task<IEnumerable<T>> QueryAsync<T> (string sql, object values)
|
||||
public async Task<IEnumerable<T>> QueryAsync<T> (string sql, object? values = null)
|
||||
{
|
||||
// Подключаемся к БД
|
||||
await using MySqlConnection connection = new(ConnectionString);
|
||||
@@ -72,7 +72,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
public IEnumerable<T> Query<T> (string sql, object values) => QueryAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
public IEnumerable<T> Query<T> (string sql, object? values = null) => QueryAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
|
||||
/// <summary>
|
||||
/// Запрос строки
|
||||
@@ -81,7 +81,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
public async Task<T?> QueryRowAsync<T> (string sql, object values)
|
||||
public async Task<T?> QueryRowAsync<T> (string sql, object? values = null)
|
||||
{
|
||||
// Подключаемся к БД
|
||||
await using MySqlConnection connection = new(ConnectionString);
|
||||
@@ -100,7 +100,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
public T? QueryRow<T> (string sql, object values) => QueryRowAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
public T? QueryRow<T> (string sql, object? values = null) => QueryRowAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -113,7 +113,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Массив результата запроса</returns>
|
||||
public async Task<IEnumerable<T>> GetResultsAsync<T> (string sql, object values) => await QueryAsync<T>(sql, values);
|
||||
public async Task<IEnumerable<T>> GetResultsAsync<T> (string sql, object? values = null) => await QueryAsync<T>(sql, values);
|
||||
|
||||
/// <summary>
|
||||
/// Получает массив данных (SELECT * FROM...)
|
||||
@@ -122,7 +122,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Массив результата запроса</returns>
|
||||
public IEnumerable<T> GetResults<T> (string sql, object values) => GetResultsAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
public IEnumerable<T> GetResults<T> (string sql, object? values = null) => GetResultsAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
|
||||
/// <summary>
|
||||
/// Получает строку в массиве данных
|
||||
@@ -131,7 +131,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Строки данных или null</returns>
|
||||
public async Task<T?> GetRowAsync<T> (string sql, object values)
|
||||
public async Task<T?> GetRowAsync<T> (string sql, object? values = null)
|
||||
{
|
||||
// Подключаемся к БД
|
||||
await using MySqlConnection connection = new(ConnectionString);
|
||||
@@ -150,7 +150,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Строки данных или null</returns>
|
||||
public T? GetRow<T> (string sql, object values) => GetRowAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
public T? GetRow<T> (string sql, object? values = null) => GetRowAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
|
||||
/// <summary>
|
||||
/// Получает колонку в массиве данных
|
||||
@@ -159,7 +159,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Колонка данных или null</returns>
|
||||
public async Task<IEnumerable<T>> GetColAsync<T> (string sql, object values)
|
||||
public async Task<IEnumerable<T>> GetColAsync<T> (string sql, object? values = null)
|
||||
where T : IComparable, IConvertible, IEquatable<T> => await QueryAsync<T>(sql, values);
|
||||
|
||||
/// <summary>
|
||||
@@ -169,7 +169,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Колонка данных или null</returns>
|
||||
public IEnumerable<T> GetCol<T> (string sql, object values) where T : IComparable, IConvertible, IEquatable<T> =>
|
||||
public IEnumerable<T> GetCol<T> (string sql, object? values = null) where T : IComparable, IConvertible, IEquatable<T> =>
|
||||
GetColAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
|
||||
/// <summary>
|
||||
@@ -179,7 +179,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Поле или null</returns>
|
||||
public async Task<T?> GetVarAsync<T> (string sql, object values) where T : IComparable, IConvertible, IEquatable<T>
|
||||
public async Task<T?> GetVarAsync<T> (string sql, object? values = null) where T : IComparable, IConvertible, IEquatable<T>
|
||||
{
|
||||
// Подключаемся к БД
|
||||
await using MySqlConnection connection = new(ConnectionString);
|
||||
@@ -198,7 +198,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Поле или null</returns>
|
||||
public T? GetVar<T> (string sql, object values) where T : IComparable, IConvertible, IEquatable<T> =>
|
||||
public T? GetVar<T> (string sql, object? values = null) where T : IComparable, IConvertible, IEquatable<T> =>
|
||||
GetVarAsync<T>(sql, values).GetAwaiter().GetResult();
|
||||
|
||||
#endregion
|
||||
@@ -363,7 +363,7 @@ public class MySqlEngine: IDbEngine
|
||||
/// <param name="tableName">Имя таблицы</param>
|
||||
/// <param name="whereConditionColumn">Условие поиска строки. ВНИМАНИЕ! Должно быть одним из указанных свойств типа класса data</param>
|
||||
/// <returns>Результат выполнения</returns>
|
||||
public bool DeleteRow<T>(T data, string tableName, string whereConditionColumn) where T : class =>
|
||||
public bool DeleteRow<T> (T data, string tableName, string whereConditionColumn) where T : class =>
|
||||
DeleteRowAsync(data, tableName, whereConditionColumn).GetAwaiter().GetResult();
|
||||
#endregion
|
||||
}
|
@@ -1,4 +1,6 @@
|
||||
namespace anbs_cp.Database.Interfaces;
|
||||
using System.Transactions;
|
||||
|
||||
namespace anbs_cp.Database.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Интерфейс для работы с базой данных
|
||||
@@ -18,7 +20,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Количество затронутых строк</returns>
|
||||
Task<int> ExecuteAsync (string sql, object values);
|
||||
Task<int> ExecuteAsync (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Выполняем команду
|
||||
@@ -26,7 +28,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Количество затронутых строк</returns>
|
||||
int Execute (string sql, object values);
|
||||
int Execute (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Запрос
|
||||
@@ -35,7 +37,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
Task<IEnumerable<T>> QueryAsync<T> (string sql, object values);
|
||||
Task<IEnumerable<T>> QueryAsync<T> (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Запрос
|
||||
@@ -44,7 +46,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
IEnumerable<T> Query<T> (string sql, object values);
|
||||
IEnumerable<T> Query<T> (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Запрос строки
|
||||
@@ -53,7 +55,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
Task<T?> QueryRowAsync<T> (string sql, object values);
|
||||
Task<T?> QueryRowAsync<T> (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Запрос строки
|
||||
@@ -62,7 +64,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">Запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Возвращает массив типа <see cref="T"/> или значение по умолчанию</returns>
|
||||
T? QueryRow<T> (string sql, object values);
|
||||
T? QueryRow<T> (string sql, object? values = null);
|
||||
#endregion
|
||||
|
||||
#region Получение данных
|
||||
@@ -74,7 +76,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Массив результата запроса</returns>
|
||||
Task<IEnumerable<T>> GetResultsAsync<T> (string sql, object values);
|
||||
Task<IEnumerable<T>> GetResultsAsync<T> (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Получает массив данных (SELECT * FROM...)
|
||||
@@ -83,7 +85,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Массив результата запроса</returns>
|
||||
IEnumerable<T> GetResults<T> (string sql, object values);
|
||||
IEnumerable<T> GetResults<T> (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Получает строку в массиве данных
|
||||
@@ -92,7 +94,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Строки данных или null</returns>
|
||||
Task<T?> GetRowAsync<T> (string sql, object values);
|
||||
Task<T?> GetRowAsync<T> (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Получает строку в массиве данных
|
||||
@@ -101,7 +103,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Строки данных или null</returns>
|
||||
T? GetRow<T> (string sql, object values);
|
||||
T? GetRow<T> (string sql, object? values = null);
|
||||
|
||||
/// <summary>
|
||||
/// Получает колонку в массиве данных
|
||||
@@ -110,7 +112,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Колонка данных или null</returns>
|
||||
Task<IEnumerable<T>> GetColAsync<T> (string sql, object values) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
Task<IEnumerable<T>> GetColAsync<T> (string sql, object? values = null) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
|
||||
/// <summary>
|
||||
/// Получает колонку в массиве данных
|
||||
@@ -119,7 +121,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Колонка данных или null</returns>
|
||||
IEnumerable<T> GetCol<T> (string sql, object values) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
IEnumerable<T> GetCol<T> (string sql, object? values = null) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
|
||||
/// <summary>
|
||||
/// Получение значение единичного поля
|
||||
@@ -128,7 +130,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Поле или null</returns>
|
||||
Task<T?> GetVarAsync<T> (string sql, object values) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
Task<T?> GetVarAsync<T> (string sql, object? values = null) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
|
||||
/// <summary>
|
||||
/// Получение значение единичного поля
|
||||
@@ -137,7 +139,7 @@ public interface IDbEngine
|
||||
/// <param name="sql">SQL-запрос</param>
|
||||
/// <param name="values">Данные запроса</param>
|
||||
/// <returns>Поле или null</returns>
|
||||
T? GetVar<T> (string sql, object values) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
T? GetVar<T> (string sql, object? values = null) where T: IComparable, IConvertible, IEquatable<T>;
|
||||
|
||||
#endregion
|
||||
|
||||
|
@@ -8,7 +8,7 @@
|
||||
<RootNamespace>anbs_cp.Database</RootNamespace>
|
||||
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
|
||||
<PackageId>ANBSoftware.ComponentsPack.Database</PackageId>
|
||||
<Version>2023.08.19.4</Version>
|
||||
<Version>2023.08.27.0</Version>
|
||||
<Company>Александр Бабаев</Company>
|
||||
<Product>Набор компонентов ANB Software для работы с БД</Product>
|
||||
<Description>Библиотека полезных методов языка C# для работы с базами данных</Description>
|
||||
|
Reference in New Issue
Block a user