Я пытаюсь вызвать хранимую процедуру PostgreSQL с параметрами OUT из моего API .NET Core 3.1, чтобы удалить запись на основе идентификатора. Однако, когда я пытаюсь выполнить хранимую процедуру с параметрами OUT, я получаю следующую ошибку: < /p>
42883: procedure usp_delete_announcements(integer) does not exist
< /code>
Ниже приведен соответствующий блок кода, где я вызываю хранимую процедуру с параметрами OUT: < /p>
using (NpgsqlConnection conn = new NpgsqlConnection(connectionString))
{
conn.Open();
using (NpgsqlCommand cmd = new NpgsqlCommand("CALL usp_delete_announcements(@in_id)", conn))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@in_id", Convert.ToInt32(strDecryptedId));
cmd.Parameters.Add("@out_announcements_id", NpgsqlTypes.NpgsqlDbType.Integer).Direction = ParameterDirection.Output;
cmd.Parameters.Add("@out_error_code", NpgsqlTypes.NpgsqlDbType.Integer).Direction = ParameterDirection.Output;
cmd.Parameters.Add("@out_message", NpgsqlTypes.NpgsqlDbType.Varchar).Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
response.Id = (int)cmd.Parameters["@out_announcements_id"].Value;
response.Message = cmd.Parameters["@out_message"].Value.ToString();
}
}
< /code>
Мне нужна помощь с пониманием, почему Postgresql не признает, когда я пытаюсь позвонить в сохраненную процедуру с параметром OUT, и я хотел бы знать, есть ли что -то не так, как я Вызов процедуры из ядра .NET или, если есть проблема с моей настройкой PostgreSQL. ul>
[*] Проверьте сохраненную процедуру: я подтвердил, что хранимая процедура существует, и принимает целочисленный параметр в Postgresql.
[*] Проверьте параметры: я удостоверился, что входной параметр @in_id Правильно передается из C#. < /li>
Прямое выполнение теста: я проверил хранимую процедуру непосредственно в PostgreSQL, чтобы подтвердить, что она работает так же, как и ожидалось, с Входной параметр.
Что я ожидал:
Я ожидал хранимой процедуры Чтобы выполнить без проблем, удалить запись и вернуть выходные параметры
Подробнее здесь: https://stackoverflow.com/questions/794 ... ile-callin
«42883: Процедура USP_DELETE_ANNOUNCEMENTS (Integer) не существует» при вызове хранимой процедуры с Out Paremeters из .N ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
OpenTeLemetry-CPP тестовый приложение работает, но тот же код в Times Out Out Out
Anonymous » » в форуме C++ - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-