mirror of
https://github.com/PluralKit/PluralKit.git
synced 2026-02-08 14:57:54 +00:00
Major database refactor (again)
This commit is contained in:
parent
3996cd48c7
commit
c7612df37e
55 changed files with 1014 additions and 1100 deletions
|
|
@ -6,20 +6,11 @@ using Dapper;
|
|||
namespace PluralKit.Core {
|
||||
public static class ConnectionUtils
|
||||
{
|
||||
public static async IAsyncEnumerable<T> QueryStreamAsync<T>(this IDatabase connFactory, string sql, object param)
|
||||
{
|
||||
await using var conn = await connFactory.Obtain();
|
||||
|
||||
await using var reader = (DbDataReader) await conn.ExecuteReaderAsync(sql, param);
|
||||
var parser = reader.GetRowParser<T>();
|
||||
while (await reader.ReadAsync())
|
||||
yield return parser(reader);
|
||||
}
|
||||
|
||||
public static async IAsyncEnumerable<T> QueryStreamAsync<T>(this IPKConnection conn, string sql, object param)
|
||||
{
|
||||
await using var reader = (DbDataReader) await conn.ExecuteReaderAsync(sql, param);
|
||||
var parser = reader.GetRowParser<T>();
|
||||
|
||||
while (await reader.ReadAsync())
|
||||
yield return parser(reader);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,9 +8,9 @@ namespace PluralKit.Core
|
|||
{
|
||||
private readonly string? _conflictField;
|
||||
private readonly string? _condition;
|
||||
private StringBuilder _insertFragment = new StringBuilder();
|
||||
private StringBuilder _valuesFragment = new StringBuilder();
|
||||
private StringBuilder _updateFragment = new StringBuilder();
|
||||
private readonly StringBuilder _insertFragment = new StringBuilder();
|
||||
private readonly StringBuilder _valuesFragment = new StringBuilder();
|
||||
private readonly StringBuilder _updateFragment = new StringBuilder();
|
||||
private bool _firstInsert = true;
|
||||
private bool _firstUpdate = true;
|
||||
public QueryType Type { get; }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue