You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在NestJS中使用TypeORM结合msnodesqlv8实现Windows身份认证

NestJS中通过TypeORM配置msnodesqlv8实现Windows身份认证

直接对应你现有的mssql连接配置,将TypeOrmModule.forRoot()的配置参数调整如下,即可实现相同的Windows身份认证连接:

import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';
// 导入你的实体类,示例:
// import { Emp } from './entities/emp.entity';

@Module({
  imports: [
    TypeOrmModule.forRoot({
      type: 'mssql',
      driver: 'msnodesqlv8',
      host: 'W70100\\SQLEXPRESS01',
      database: 'Test',
      port: 1433,
      extra: {
        trustedConnection: true,
        useUTC: true
      },
      // 指定实体类:可直接引入实体,或用路径字符串匹配(如'dist/**/*.entity{.ts,.js}')
      entities: [/* 填写你的实体类或路径 */],
      synchronize: false, // 生产环境必须关闭,开发环境可按需开启
      logging: false, // 可选,开启后打印SQL执行日志
    }),
  ],
})
export class AppModule {}

配置项对应说明

  • type: 'mssql': 声明数据库类型为MSSQL
  • driver: 'msnodesqlv8': 指定使用你原代码中的msnodesqlv8驱动
  • host: 对应原配置的server字段,双反斜杠是TypeScript字符串中表示单个反斜杠的语法
  • database: 目标数据库名称,与原配置一致
  • port: 数据库端口,保持原配置的1433
  • extra: 存放驱动专属的额外配置,完全对应原代码中options对象的内容:
    • trustedConnection: true: 启用Windows身份认证(可信连接)
    • useUTC: true: 保持时间处理使用UTC,与原配置一致
  • entities: 必须指定实体类,否则TypeORM无法完成数据库表映射
  • synchronize: 自动同步实体结构到数据库,生产环境务必关闭,避免数据丢失

必要依赖检查

确保你的项目已安装以下依赖包:

npm install @nestjs/typeorm typeorm mssql msnodesqlv8

内容的提问来源于stack exchange,提问作者kim93

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 07:48:45