Фискы вставки и редактирования
This commit is contained in:
parent
508b9fca0e
commit
48f3831c95
@ -39,6 +39,7 @@ namespace MedicalPostgresqlDatabase
|
||||
connection.Open();
|
||||
using var cmd = new NpgsqlCommand($"DELETE FROM {TABLE_NAME} WHERE {PRIMARY_KEY_COLUMN_NAME} = @id", connection);
|
||||
cmd.Parameters.AddWithValue("@id", id);
|
||||
_logger.LogDebug(cmd.CommandText);
|
||||
Stopwatch stopwatch = new();
|
||||
stopwatch.Start();
|
||||
cmd.ExecuteNonQuery();
|
||||
@ -53,8 +54,9 @@ namespace MedicalPostgresqlDatabase
|
||||
{
|
||||
using var connection = GetConnection();
|
||||
connection.Open();
|
||||
using var cmd = new NpgsqlCommand($"SELECT * FROM {TABLE_NAME} WHERE {PRIMARY_KEY_COLUMN_NAME} = @id", connection);
|
||||
cmd.Parameters.AddWithValue("@id", id);
|
||||
using var cmd = new NpgsqlCommand($"SELECT * FROM {TABLE_NAME} WHERE {PRIMARY_KEY_COLUMN_NAME} = @{PRIMARY_KEY_COLUMN_NAME}", connection);
|
||||
cmd.Parameters.AddWithValue($"@{PRIMARY_KEY_COLUMN_NAME}", id);
|
||||
_logger.LogDebug(cmd.CommandText);
|
||||
Stopwatch stopwatch = new();
|
||||
stopwatch.Start();
|
||||
using var reader = cmd.ExecuteReader();
|
||||
@ -76,6 +78,7 @@ namespace MedicalPostgresqlDatabase
|
||||
using var connection = GetConnection();
|
||||
connection.Open();
|
||||
using var cmd = new NpgsqlCommand($"SELECT * FROM {TABLE_NAME} ORDER BY {PRIMARY_KEY_COLUMN_NAME}", connection);
|
||||
_logger.LogDebug(cmd.CommandText);
|
||||
Stopwatch stopwatch = new();
|
||||
stopwatch.Start();
|
||||
using var reader = cmd.ExecuteReader();
|
||||
@ -101,14 +104,14 @@ namespace MedicalPostgresqlDatabase
|
||||
string valuesString = "";
|
||||
foreach (var key in dict.Keys)
|
||||
{
|
||||
namesString = string.Join(", ", namesString, $"{key}");
|
||||
namesString += (string.IsNullOrEmpty(namesString) ? "" : ", ") + $"{key}";
|
||||
if (key == PRIMARY_KEY_COLUMN_NAME)
|
||||
valuesString = string.Join(", ", valuesString, $"nextval('{PRIMARY_KEY_SEQUENCE_NAME}')");
|
||||
valuesString += (string.IsNullOrEmpty(valuesString) ? "" : ", ") + $"nextval('{PRIMARY_KEY_SEQUENCE_NAME}')";
|
||||
else
|
||||
valuesString = string.Join(", ", valuesString, $"@{key}");
|
||||
valuesString += (string.IsNullOrEmpty(valuesString) ? "" : ", ") + $"@{key}";
|
||||
}
|
||||
namesString = $"({namesString})";
|
||||
valuesString += $"({valuesString})";
|
||||
valuesString = $"({valuesString})";
|
||||
|
||||
|
||||
string[] queryBuilder = {
|
||||
@ -125,6 +128,7 @@ namespace MedicalPostgresqlDatabase
|
||||
{
|
||||
cmd.Parameters.AddWithValue($"@{key}", dict[key]);
|
||||
}
|
||||
_logger.LogDebug(cmd.CommandText);
|
||||
Stopwatch stopwatch = new();
|
||||
stopwatch.Start();
|
||||
cmd.ExecuteNonQuery();
|
||||
@ -146,28 +150,35 @@ namespace MedicalPostgresqlDatabase
|
||||
foreach (var key in dict.Keys)
|
||||
{
|
||||
if (key != PRIMARY_KEY_COLUMN_NAME)
|
||||
setString = string.Join(", ", setString, $"{key} = @{key}");
|
||||
setString += (string.IsNullOrEmpty(setString) ? "" : ", ") + $"{key} = @{key}";
|
||||
}
|
||||
setString = $"({setString})";
|
||||
|
||||
string[] queryBuilder = {
|
||||
"UPDATE",
|
||||
TABLE_NAME,
|
||||
"SET",
|
||||
setString,
|
||||
"VALUES",
|
||||
setString,
|
||||
"WHERE",
|
||||
$"{PRIMARY_KEY_COLUMN_NAME} = @{PRIMARY_KEY_COLUMN_NAME}"
|
||||
};
|
||||
|
||||
using var cmd = new NpgsqlCommand(string.Join(' ', queryBuilder), connection);
|
||||
|
||||
|
||||
foreach (var key in dict.Keys)
|
||||
{
|
||||
cmd.Parameters.AddWithValue($"@{key}", dict[key]);
|
||||
if (key == PRIMARY_KEY_COLUMN_NAME)
|
||||
{
|
||||
cmd.Parameters.AddWithValue($"@{key}", Convert.ToInt32(dict[key]));
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd.Parameters.AddWithValue($"@{key}", dict[key]);
|
||||
}
|
||||
}
|
||||
|
||||
_logger.LogDebug(cmd.CommandText);
|
||||
|
||||
Stopwatch stopwatch = new();
|
||||
stopwatch.Start();
|
||||
cmd.ExecuteNonQuery();
|
||||
|
Loading…
x
Reference in New Issue
Block a user