Я пытаюсь запросить таблицу Oracle с помощью Loopback4 и TypeORM, но я ORA-00942: таблица или представление не существует. Более того, через некоторое время я получаю еще одну ошибку, подобную этой:
'Невозможно создать новое соединение с именем «default», потому что соединение с таким именем уже существует, и теперь у него есть активный сеанс соединения.'
Я новичок в Loopback4 и Nodejs - Typescript, поэтому я вызвал метод createConnection внутри контроллера.
Возможно, мне следует вызвать его где-нибудь централизованно, но я не знаю, где и как это централизовать. внутри моего проекта.
это моя сущность
import { Entity, Column, PrimaryColumn, OneToOne } from "typeorm";
@Entity("Pratica")
export class Pratica {
@PrimaryColumn()
protocolloaci: number;
@Column()
codicepratica: string;
}
мой метод управления
@get('/pratiche/{id}', {
responses: {
'200': {
description: 'Pratica model instance',
content: { 'application/json': { schema: getModelSchemaRef(Pratica) } },
},
},
})
async findById(@param.path.number('id') id: number): Promise<Pratica> {
return new Promise((resolve) => {
createConnection({
type: 'oracle',
host: '10.64.2.226',
port: 1521,
sid: 'npra02s.svidbs003std',
username: 'sua03e',
password: 'iniziale',
entities: [
Pratica
],
logging: true
}).then(async connection => {
let praticaRepository = connection.getRepository(Pratica);
const pratica = await praticaRepository.find({ protocolloaci: id });
resolve(pratica[0]); // return using resolve
}).catch(error => console.log(error));
});
}
спасибо