【问题标题】:PostgreSql : how can we call stored procedures inout parameters in C#?PostgreSql:我们如何在 C# 中调用存储过程 inout 参数?
【发布时间】:2019-11-27 02:28:42
【问题描述】:

我可以从函数中获取数据,但我不能使用 Npgsql 在 C# 中调用存储过程参数。你有什么想法吗?

【问题讨论】:

标签: c# postgresql function stored-procedures npgsql


【解决方案1】:

这是一个简单的例子:

using (var cmd = new NpgsqlCommand("SELECT my_func()", conn))
{
    cmd.Parameters.Add(new NpgsqlParameter("p_out", DbType.String) { Direction = ParameterDirection.Output });
    cmd.ExecuteNonQuery();
    Console.WriteLine(cmd.Parameters[0].Value);
}

欲了解更多信息,请查看the documentation

【讨论】:

  • 您的 PostgreSQL 函数需要有一个输出参数(阅读the PG docs 或查找有关如何编写此类函数的教程)。然后,在 Npgsql 客户端,上面的代码 sn -p 会将函数的参数(本例中名为 p_out)加载到参数中。然后,您可以像在代码示例中那样访问它以获取值。
猜你喜欢
  • 2021-01-25
  • 2011-07-06
  • 2011-07-29
  • 2011-07-10
  • 1970-01-01
  • 1970-01-01
  • 2012-09-12
  • 2017-09-29
  • 1970-01-01
相关资源
最近更新 更多