NPGSQL与.netcore如何登录到模式,而不仅仅是数据库
本文关键字:模式 数据库 不仅仅是 登录 netcore 何登录 NPGSQL | 更新日期: 2023-09-27 18:06:38
这是我的NPGSQL
连接字符串
{
"ConnectionStrings": {
"DataAccessPostgreSqlProvider": "User ID=damienbod;Password=1234;Host=localhost;Port=5432;Database=damienbod;Pooling=true;"
}
}
}
摘自这里:https://damienbod.com/2016/01/11/asp-net-5-with-postgresql-and-entity-framework-7/
但是我在Postgres
数据库下使用schemas
。如何连接到idsrv4
模式?
您也可以在连接字符串中指定搜索路径:
{
"ConnectionStrings": {
"DataAccessPostgreSqlProvider": "User ID=damienbod;Password=1234;Host=localhost;Port=5432;Database=damienbod;Pooling=true;SearchPath=your_search_path;"
}
}
所有模式都位于同一个数据库下,因此当您连接到该数据库时,您可以访问所有模式。如果要访问idsrv4
模式下的表,只需限定其名称:
SELECT * FROM idsrv4.mytable;
如果您不喜欢用模式限定表名的所有实例,您可以更改search_path
变量:
SET search_path = 'idsrv4,public';
现在,对于这个连接的其余部分,您可以执行SELECT * FROM mytable
。search_path
的含义是,当指定非限定表名时,它包含要搜索的模式列表。注意search_path
在每次连接的基础上工作,所以每次连接到数据库时都必须设置它。