用途:postgres-nio 是 Swift 的 PostgreSQL 客户端库,提供 async/await 支持、类型安全查询构建、连接池和预编译语句。本技能面向在 Swift 中使用 PostgreSQL 的开发者提供使用指导。
主要能力:通过 PostgresClient 管理连接池;使用字符串插值生成参数绑定($1、$2…)以防 SQL 注入;支持按位置或列名解码行数据,以及解码为自定义 Decodable 类型;支持 PostgresPreparedStatement 预编译语句;支持事务(BEGIN/COMMIT/ROLLBACK);支持 COPY FROM 批量导入;支持流式读取大结果集并带背压;支持 TLS 与 Unix 域套接字;可捕获 PSQLError 并按错误码处理。
使用方式:在 Package.swift 添加依赖 .package(url: "https://github.com/vapor/postgres-nio.git", from: "1.21.0"),import PostgresNIO 后创建 PostgresClient 配置并调用 run(),再用 query 执行查询。表名等动态标识符需用 unescaped 且必须可信,不可用于用户输入。
适用场景:Swift 服务端应用访问 PostgreSQL,需要连接池、参数化查询、预编译语句、事务或大批量数据导入时。
限制:资料未提供具体版本兼容范围、性能基准或收费信息;unescaped 仅可用于可信标识符。