Используйте форму HTML для сохранения изображения на SQL Server 2012 - PullRequest
0 голосов
/ 13 января 2020

Я использую npm express, body-parser и ms sql в Node JS, и я пытаюсь найти способ создать форму, подобную этой:

            <form action="/" method="POST">


                Id<input class="form-control" type="number" step=any name="id" placeholder="id">

                <br>

                Image
                <input class="form" type="file" name="image"> 

                <button class="btn btn-lg btn-primary btn-block">metalo!</button>
            </form>

, что позволит мне сохранить изображение с его идентификатором в SQL server 2012.

Для отправки запроса я делаю следующее:

app.post("/", function(req, res){

     //var query = `INSERT INTO myimages (id) VALUES ('${req.body.id}')`;
     var query = `INSERT INTO myimages VALUES ('${req.body.id}',(SELECT * FROM OPENROWSET(BULK N'${req.body.image}', SINGLE_BLOB) as T1))`;
                //console.log(query)
     executeQuery (res, query); 

})

Сообщение об ошибке I get is:
сообщение: «Невозможно выполнить массовую загрузку. Файл "Screenshot_20190421-125051.png" не существует. '


Специальные примечания:
1. причина оператора openrowset в SQL потому что я должен использовать подобное утверждение для вставки изображений на сервер SQL, например:

INSERT INTO myimages values (1, (SELECT * FROM OPENROWSET(BULK N'D:\Google Drive\Pictures\20190501_102004.jpg', SINGLE_BLOB) as T1))


2. ExecuteQuery работает, если я использую цифры или текст, но, очевидно, не с изображениями .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...