Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1.1K
Vistas
Ejecute un procedimiento almacenado de Oracle DB en NestJS

Estoy tratando de ejecutar un procedimiento almacenado de Oracle a través de mi API NestJS. He estado siguiendo la documentación de la base de datos de NestJS, pero no le brinda ayuda específica con la sintaxis necesaria para llamar a un procedimiento almacenado. La ubicación del procedimiento almacenado también es un poco extraña, debe ingresar a la base de datos, a otros usuarios, luego al usuario, luego a la carpeta de procedimientos de ese usuario, donde puedo acceder al procedimiento que necesito (vea la imagen a continuación) . ingrese la descripción de la imagen aquí

Cuando trato de ejecutar el procedimiento en la base de datos, muestra que necesitaba startTime y endTime como parámetros, cuando paso el mouse me da el formato, que es lo que estoy pasando a través de mi servicio. ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

Aquí está mi app.module:

 @Module({ imports: [ ConfigModule.forRoot({ envFilePath: ['.env.development.local'], isGlobal: true }), TypeOrmModule.forRoot({ type: 'oracle', host: process.env.OMSRECON_DB_HOST, port: parseInt(process.env.OMSRECON_DB_PORT), username: 'FAKE_USER', password: 'FAKE_PASSWORD', database: process.env.OMSRECON_DB_DATABASE, sid: process.env.OMSRECON_DB_SID, entities: [OmsReconData], synchronize: false }), CustomerOutagesModule, UserModule, SystemStatusesModule, SystemIncidentsModule ], controllers: [AppController], providers: [AppService], }) export class AppModule {}

Aquí está mi módulo de servicios:

 @Module({ imports: [ TypeOrmModule.forFeature([OmsReconData]) ], controllers: [CustomerOutagesController], providers: [CustomerOutagesService] }) export class CustomerOutagesModule {}

y aquí está mi service.ts:

 @Injectable() export class CustomerOutagesService { constructor( @InjectRepository(OmsReconData) private omsReconRepository: Repository<OmsReconData> ) {} async getOmsRecondData(startDate: string, endDate: string) { const result = await this.omsReconRepository.query( `EXEC OMS_RECON.GET_OMS_RECON_DATA @START_TIME=${startDate} @END_TIME=${endDate}`, ); console.log(result); return result; } }

Realmente solo necesito averiguar qué sintaxis necesito para ejecutar un procedimiento almacenado y cómo llegar a los otros procedimientos almacenados del usuario. Gracias de antemano por la ayuda.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Creo que usaría esto

 await this.connection.query( 'EXEC ProcedureName @0', [ param0 ] );

Lo siento, no soy muy bueno con typeorm, pero al menos debería funcionar (o un enfoque similar)

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda