Как я могу использовать несколько SQL с node.js и mysql

Я попытался поставить запрос множественного выбора с помощью node.js и mysql. но консоль выводит журнал, в котором говорится, что с sql что-то не так.

Я также сделал multipleStatements: true;

var mysql = require('mysql');
var pool = mysql.createPool({
    connectionLimit : 5,
    host : '*.*.*.*',
    user : 'root',
    password : '****',
    database : 'db',
    multipleStatements: true
});

Я сделал этот код для вычисления адреса хоста с сетевым адресом и маской подсети. и я хочу выбрать строки, соответствующие IP-адресу хоста, который я вычислил.

Я сделал массив sql и поместил SQL в массив .. и я сделал это для формирования строки и проанализировал как один оператор sql (я имею в виду sql: "sql1; sql2; sql3; ....")

 pool.getConnection(function(err, connection){
            var sql  = "";
            var new_sql = new Array();
            if (req.body.search_network){
                var search_data = [req.body.search_network, req.body.search_subnet];
                console.info("*****:"+search_data);
              
               
             
                //calculating host addresses
                var NETWORK = req.body.search_network;
                var SUBNET = req.body.search_subnet;
                var host_cnt = Math.pow(2,(32-SUBNET));
                var split_net = NETWORK.split('.');
                var NET_1 = Number(split_net[0]);
                var NET_2 = Number(split_net[1]);
                var NET_3 = Number(split_net[2]);
                var NET_4 = Number(split_net[3]);
                //network address
                console.info(NET_1+"."+NET_2+"."+NET_3+"."+NET_4);
                
                console.info(Math.floor(1/Math.pow(256,3)));
                
                 for (var i=1; i<host_cnt-1; i++){
                    var new_NET_1 = NET_1 + Math.floor(i/Math.pow(256,3));
                    var new_NET_2 = NET_2 + Math.floor(i/Math.pow(256,2));
                    var new_NET_3 = NET_3 + Math.floor(i/256);
                    var new_NET_4 = NET_4 + Math.floor(i%256);
                //host address
                    var IP_HOST = String(new_NET_1)+"."+String(new_NET_2)+"."+String(new_NET_3)+"."+String(new_NET_4);
                 
                    new_sql.push(" SELECT ARP_TBL.DEVICE_IP as device_ip, IP_MGMT_TBL.IP as ip, IP_MGMT_TBL.IP_TYPE as ip_type, IP_MGMT_TBL.PURPOSE as purpose, IP_MGMT_TBL.OWNER_NAME as name, IP_MGMT_TBL.OWNER_DIV as owner_div, IP_MGMT_TBL.REQUEST_TIME as request_time, ARP_TBL.PORT as port " + "FROM IP_MGMT_TBL left join ARP_TBL on IP_MGMT_TBL.IP = ARP_TBL.ip " +"WHERE ARP_TBL.ip = "+IP_HOST);
                                  
                 }               
                
                
                sql = new_sql.join(';')+";";
                console.info(sql);
                
              
              
              // put query to DB and get results within 'rows'
                connection.query(sql, function(err, rows){
                  if (err) console.error("err:" +err);
                  console.info("rows:"+ JSON.stringify(rows));
                   res.render('ipmgmt/detail', {rows: rows});
                   connection.release();
                  });
              


<!-- begin snippet: js hide: false console: true babel: false -->
; SELECT ARP_TBL.DEVICE_IP as device_ip, IP_MGMT_TBL.IP as ip, IP_MGMT_TBL.IP_TYPE as ip_type, IP_MGMT_TBL.PURPOSE as purpose, IP_MGMT_TBL.OWNER_NAME as name, IP_MGMT_TBL.OWNER_DIV as owner_div, IP_MG
MT_TBL.REQUEST_TIME as request_time, ARP_TBL.PORT as port FROM IP_MGMT_TBL left join ARP_TBL on IP_MGMT_TBL.IP = ARP_TBL.ip WHERE ARP_TBL.ip=101.1.47.254;
err:Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.47.1; SELECT ARP_TBL.DEVICE_IP as dev
ice_ip, IP_MGMT_TBL.IP as ip, IP_MGMT_TBL.' at line 1
rows:undefined

Это то, что говорится в журнале консоли. Также это часть полного журнала. Я думаю, что SQL-запросы кажутся хорошими, но он не работает с запросами ..

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
124
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Необходимо указать IP-адрес - это основное решение синтаксической ошибки. Используйте запрос формы, чтобы исключить необходимость в нескольких запросах:

... WHERE ARP_TBL.ip IN ('ip address1', 'ip address 2', ...)

ВЫБРАТЬ * ОТ ARP_TBL.ip ГДЕ device_ip IN ('ip 1', 'ip 2', ...)

Другие вопросы по теме