npgsql 相关问题

Npgsql是PostgreSQL的.NET数据提供程序。它允许为.NET框架开发的任何程序访问PostgreSQL数据库服务器。它以100%C#代码实现。

npgsql 连接池,具有指定同一主机的两个连接字符串

如果我有两个不同的 DbContext,其连接字符串仅在数据库字段中不同,但主机、用户名、密码等都相同,则在使用这两个 DbContext 时将重用相同的连接

回答 1 投票 0

为什么我无法删除数据库?

我收到 Npgsql.PostgresException: '42601: 在“$1”位置或附近出现语法错误:25' 公共异步任务删除(字符串dbName){ 使用(var连接= GetNewConnection()){

回答 1 投票 0

SSL Mode=Require 在连接到 pgBouncer 时导致 Npgsql 出现错误

我有一个使用 Npgsql 版本 4.1.12 的旧应用程序 我正在连接到需要 SSL 连接的 Azure 数据库。 我可以使用以下字符串连接到数据库: 服务器=xxxxx.postgres。

回答 1 投票 0

来自 SP 的 NPGSQL 日志记录

我正在使用控制台应用程序和 VB.NET 连接到 Postgres 数据库。我们运行大量具有不同级别信息的存储过程。 昏暗的 varloggerFactory = LoggerFactory.Create(Function(bui...

回答 1 投票 0

如何在Npgsql中仅使用单个连接执行多个查询?

我在 npgsql 中创建了多个连接来执行多个查询,如下代码所示。 事务访问类 { private const string connString = "主机=localhost;用户名=post...

回答 1 投票 0

42703:b.Id列不存在

我有一个使用 Postgresql 的简单 EF 实现,它返回错误 {“42703:列b.Id不存在 位置:8"}。也许您想引用“...

回答 1 投票 0

为什么 NpgsqlDataReader 从 V3 开始变慢了?

我正忙着将使用 Postgres 数据库 v9 的旧系统升级到 v14, 我需要在 C# .NetFramework 4.6.1 应用程序上将 Npgsql 库从当前版本 2.2.7 更新到 4.1.12。 在我的

回答 1 投票 0

Postgres ENUM 类型在第一次运行时对 dapper 不可见

我在使用 Postgres 枚举时遇到了一个奇怪的问题,尝试使用 ENUM 查询表时遇到错误,但前提是在同一会话期间运行 CREATE 命令。我不知道为什么...

回答 2 投票 0

当请求从具有重复字段的 protobuf 请求映射时,Npgsql 8.0 不再工作

使用 Npgsql 7.x 和 Dapper 的代码在 net 8 上工作正常。 它们在 Npgsql 8.0 中不起作用。 公共类位置{公共NpgsqlPoint点{获取;放; } } 公共异步任务&...

回答 1 投票 0

Npgsql 8.0 & Dapper 不再映射 NpgsqlPoint 数据类型

我知道 Npgsql 8.0 发行说明 https://www.npgsql.org/doc/release-notes/8.0.html 状态: “内置几何类型(NpgsqlPoint、NpgsqlBox 等)的解析函数已被删除...

回答 1 投票 0

如何使用 Npgsql 从 SELECT 中获取所有查询结果

我需要以 JSON 形式获取查询结果,但如果列是 JSONarray,我一直遇到问题:它会转换为字符串 我当前使用的代码: var 结果 = 新列表 我需要以 JSON 形式获取查询结果,但如果列是 JSONarray,我一直遇到问题:它会转换为字符串 我当前使用的代码: var result = new List<Dictionary<string, object>>(); await using (var cmd = new NpgsqlCommand("SELECT * FROM global", conn)) await using (var reader = await cmd.ExecuteReaderAsync()) { while (await reader.ReadAsync()) { var row = new Dictionary<string, object>(); for (int i = 0; i < reader.FieldCount; i++) { row[reader.GetName(i)] = reader.GetValue(i); } result.Add(row); } } var jsonResult = JsonConvert.SerializeObject(result, Newtonsoft.Json.Formatting.Indented); Console.WriteLine(jsonResult); 输出: [ { "id": 1, "banned": false, "strikes": "[]" }, { "id": 2, "banned": false, "strikes": "[\"nooob\"]" } ] 例外输出: [ { "id": 1, "banned": false, "strikes": [] }, { "id": 2, "banned": false, "strikes": ["nooob"] } ] 默认情况下,Npgsql 会将 JSON 列读取为字符串,因此您需要将其解析为 JSON,以便序列化程序正确处理它(否则您将获得双重序列化的值)。沿着这些思路(未测试): for (int i = 0; i < reader.FieldCount; i++) { var name = reader.GetName(i); var value = reader.GetValue(i); value = name == "strikes" ? JArray.Parse(value) : value; row[name] = value; } 请注意,根据文档,您可以更改默认映射。例如,通过使用 NpgsqlJsonNetExtensions(因为您使用的是 Newtonsoft Json.NET 序列化器): 要使用 Json.NET,请将 Npgsql.Json.NET 包添加到您的项目中,并启用该插件。

回答 1 投票 0

事务未升级为分布式事务

我有类似于以下的控制器代码(此处匿名)。我预计由于 EF Core 6 中缺乏分布式事务支持而引发异常,并且我预计代码会尝试...

回答 1 投票 0

Npgsql 的多个数据库上下文导致迁移失败

我有一个 .NET 8 Web 应用程序,并且正在使用带有 Npgsql 8.0.1 的实体框架。 我正在使用 NpgsqlDataSourceBuilder 初始化多个数据库上下文,如此处所述。 程序.cs //数据库上下文1 ...

回答 1 投票 0

如何使用 Npgsql 从 PostgreSQL 过程 refcursor 参数获取数据

我们正在从本地 SQL Server 迁移到云托管的 PostgreSQL。我们的数据库正在自动翻译,这导致了许多程序将数据返回为

回答 2 投票 0

Postgresql jsonb 枚举映射

Postgresql 在将 enum 映射到 jsonb 字段时写入索引值。如何用枚举值替换它? 默认情况下,模型中的任何枚举属性都将映射到数据库整数。 EF Core 2.1...

回答 2 投票 0

使用 EF Core 和 Postgres 检查 bool 列的约束

我正在将 EF Core 与 Postgres 结合使用。我想创建一个仅一行的“配置”表,这意味着: 添加具有默认值的位列 添加检查约束以确保列 ha...

回答 1 投票 0

Dapper 和 Postgres - 打印查询

我将 Dapper 与 Postgres 一起使用,我想记录一些诊断信息,尤其是正在运行的实际查询。 如果我使用 SQL Server 我会这样做 让连接=新的SqlConnection(

回答 1 投票 0

Classlibrary 输出类型中的 Npgsql 汇编错误

我必须在nunit测试中通过Npgsql提供程序连接到postgresql,但我遇到了汇编错误: System.IO.FileLoadException:无法加载文件或程序集“Npgsql, 版本=4.0.1.0,Cul...

回答 2 投票 0

删除读取器实例后,Aurora PostgreSQL 查询失败并出现错误“尝试读取超过流末尾”

我一直在具有 1 个写入器实例和 1 个读取器实例的 Aurora PostgreSQL 集群上运行查询。 我的应用程序位于 .NET6 中,它使用 Npgsql 库连接到集群。我...

回答 1 投票 0

Postgresql - 准备好的语句与连接池 - 这是一个权衡吗?

我的理解是,您可以在 Postgresql 中使用准备好的语句或连接池(使用 pgPool/pgBouncer 等工具),但同时只能从其中之一中受益(至少使用 Np...

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.