Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Postgres CITEXT在DBeaver中查询时工作,但在postman或swagger中通过API调用时不工作_C#_Postgresql - Fatal编程技术网

C# Postgres CITEXT在DBeaver中查询时工作,但在postman或swagger中通过API调用时不工作

C# Postgres CITEXT在DBeaver中查询时工作,但在postman或swagger中通过API调用时不工作,c#,postgresql,C#,Postgresql,我有一个数据库,其中有一个CITEXT数据类型的列,允许不区分大小写的搜索。当我测试查询时,选择*fromdb,其中description='test';它以不区分大小写的方式返回我想要的内容 但是,当我有一个API调用,它使用该列并具有不区分大小写的搜索时,它根本不起作用。这很奇怪,因为它在直接查询数据库时工作,但在通过API调用和服务进行调用时不工作 如果需要,我可以提供更多信息。本例中的答案是,在添加扩展名时,使用 create extension if not exist citext;

我有一个数据库,其中有一个CITEXT数据类型的列,允许不区分大小写的搜索。当我测试查询时,选择*fromdb,其中description='test';它以不区分大小写的方式返回我想要的内容

但是,当我有一个API调用,它使用该列并具有不区分大小写的搜索时,它根本不起作用。这很奇怪,因为它在直接查询数据库时工作,但在通过API调用和服务进行调用时不工作


如果需要,我可以提供更多信息。

本例中的答案是,在添加扩展名时,使用

create extension if not exist citext;
它默认为公共模式。因此,当API使用我们的模式调用服务时,它不起作用

alter extension citext schema actualCorrectSchema
您还可以通过将可重定位特性更改为true而不是false,来更改扩展,使其能够在任何模式之间跳转


谢谢大家的回答和帮助

在这两种情况下,您是否使用相同的提供程序(驱动程序)?什么是相同的提供程序?像搜索路径或模式?我如何检查数据库,然后检查我的服务。连接字符串。请参阅以下内容的顶部:它是否在Postgres中的函数中?CITEXT是一种数据类型,它在正在检索的值和数据库中的值上使用较低的值进行检查,使其不区分大小写。是的,它们位于相同的驱动程序和架构上@吉登格