在选择语句中传递参数时,npgsql不返回行

时间:2019-05-13 15:57:23

标签: c# postgresql npgsql

我正在使用npgsql docs中提供的以下代码。当查询字符串为|_routes |_callback |_dashboard |_test1 |_test1.module.ts |_test1-routing.module.ts |_test2 |_test2.module.ts |_test2-routing.module.ts |_test4 |_test4.module.ts |_test4-routing.module.ts 时,我可以检索数据,但条件在where子句中时,此函数将不返回数据。

我在SO上看到了其他答案,这些答案都说要在Select * from public.accounts函数中传递命令参数,但这对我没有任何回报。

当我直接在pgAdmin中运行查询AddWithValue时,它确实返回数据,因此我假设格式有误。

Select * from public.accounts where ext_auth0_user_id = 'github|42357689'

1 个答案:

答案 0 :(得分:1)

NpgsqlParameter paramUserId = cmd.Parameters.Add(“ userId”,NpgsqlTypes.NpgsqlDbType.Varchar,20);

paramUserId.Direction = ParameterDirection.Input; paramUserId.value = userId;

NpgsqlParameter paramAnotherId = cmd.Parameters.Add(“ anotherId”,NpgsqlTypes.NpgsqlDbType.Integer);

paramAnotherId.Direction = ParameterDirection.Input; paramAnotherId.value = anotherId;