【问题标题】:Issue NestJS with oracle TypeORM使用 oracle TypeORM 发布 NestJS
【发布时间】:2021-08-02 07:29:37
【问题描述】:

我正在尝试将我的 NestJs 项目与 Oracle 数据库连接,我正在使用 TypeORM,连接状态正常,但我不知道如何连接函数。这个函数属于一个包,同时这个包属于一个模式。结构如下:

我的架构: --------->我的包裹: -------------------->myFunction(id)

在 NestJS 代码中,我在 AppModule 文件中定义了这个导入:

当我尝试使用实体时,我不知道可以使用什么方法来连接我的函数。使用 ESLint 我得到了下一个方法:

我希望清楚并感谢大家!

【问题讨论】:

  • 我不确定您所说的“连接函数”是什么意思。这个功能有什么作用?它的目的是什么?它是 JavaScript/Typescript 函数,还是数据库中的 SQL 函数?
  • 该函数在我的Oracle数据库中,这个函数在一个包中,这个包在一个模式中。该函数接收一个字符串参数并返回一个状态码。
  • 函数在你的数据库里但是在js包里?我不跟。你能展示一些相关的代码吗?
  • 我在 oracle DB (PL SQL) 中有一个名为 sysadm 的模式,在这个模式中我有一个名为 UTILITARIO_BSCS_PKG 的包,在这个包中我有一个名为 FNC_CONSULTAR_CUSTCODE_SS 的函数。我需要从 NestJS 访问这个函数

标签: node.js oracle plsql nestjs typeorm


【解决方案1】:

在上一张图片中,您正尝试向数据库发出请求,如您所见,当您提到testRepository 和dots(.) 现在您必须告诉他您想在数据库中做什么在建议的列表中,您拥有所有可能的可能性。

因此,如果您想从数据库中获取或获取数据,您将使用testRepository.find() 这将为您提供该特定实体中的所有内容。为此,您必须执行以下操作,在此之前您的代码具有我在 Nest 中从未见过的东西(公开);如果它确实存在,但我不会在我的示例中使用它,因为我在 Nest 中也不知道它;你已经开始写作而没有(返回)我不知道你期望如何返回你将从数据库中获得的内容。

这是我的例子:


在您的控制器中:

@Get() AnyThing(): Promise<TestEntity[]> {return this.DaobscsService.whatEver(); }

为您服务:

@InjectRepository(TestEntity) private readonlytestRepository: Repository<TestEntity>, ) {}

async whatEver(): Promise<TestEntity[]> {return await this.testRepository.find();}

您将在已使用的服务中使用什么名称 (whatEver()),请记住在指向服务的控制器中使用相同的名称 (this.Boa...Service.(The name here) OOP 系统的我希望你知道的

这个例子是获取或获取,所以如果你的数据库中没有任何东西,那么你将一无所获!如果这不是你想要的,那么使用完整版本的命令来说明你的问题到底是什么,你期望什么以及来自控制器、服务和模块的代码。

【讨论】:

    猜你喜欢
    • 2021-04-28
    • 2019-11-12
    • 2020-12-20
    • 2020-12-09
    • 2022-11-19
    • 2019-06-19
    • 2019-09-18
    • 2020-07-19
    • 2021-04-23
    相关资源
    最近更新 更多