#sql #node.js #oracle #error-handling #node-oracledb
#sql #node.js #Oracle #обработка ошибок #узел-oracledb
Вопрос:
Когда я выполняю инструкцию SQL в NodeJS, он сообщает мне, что есть ошибка, подобная этой!
Каковы будут возможные решения?
connection.execute("create table testmm (city varchar(10));", function(err, res) {
if(err) {
console.error(err);
}
else {
console.log("LLLLLL");
console.log(res);
}
});][1]
Ответ №1:
Вы пытаетесь подключиться к СИСТЕМНОЙ учетной записи — не делайте этого, если вы не выполняете работу администратора. Если вы хотите создать свои собственные таблицы, затем создайте пользователя приложения / схему и затем подключитесь как этот пользователь.
Я вижу, вы работаете с локальной базой данных. Можете ли вы подключиться к нему из SQL * PLUS или SQL Developer в качестве пользователя SYS? Если это так, вы можете использовать это для разблокировки СИСТЕМНОЙ учетной записи. Как только это будет сделано, вы можете подключиться как SYS, так и SYSTEM для создания нового пользователя. Вот пример скрипта для этого:
create user my_app identified by oracle
default tablespace users
temporary tablespace temp;
grant connect to my_app;
grant resource to my_app;
grant create view to my_app;
После запуска этого вы можете обновить свой код, чтобы использовать учетные данные нового пользователя для подключения к create your table.
Наконец, когда вы перейдете к выполнению своей инструкции SQL, удалите завершающую точку с запятой, иначе вы получите другую ошибку.