Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET Core
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 05.04.2019
Сообщений: 17
1

Передача файла в MS SQL 2018, без сохранения на диске или же через RDP

08.10.2020, 17:40. Показов 347. Ответов 7

У меня есть приложение(Фронт(Angular) и бэк(asp.net core)), на фронте прописан метод отправки файла на бэк, все работает, я получаю файл на бэке, и сохраняю его на диске, а потом из него в SQL скрипте считываю по строчно записывая по столбцам данные из файла. Но задача у меня немного другая, мне нужно после того как я получу файл на бэке, сразу же его считать построчно в базу данных, не сохраняя на диске(т.к. сервер и база находятся на разных машинах) убил 1 день на гугл того как это решить, вижу только 2 варианта либо хранить файл в varbinary либо отправлять файл из метода asp.net core по RDP на машину где лежит база(хз как это делать, но как-то можно).
Вариант с varbinary мне кажется более простым, но также не знаю как это реализовать, много статей перечитал, пробовал через CAST преобразовать из varbinary в varchar, но на выходе я получал непонятный набор символов, прочитав еще несколько статей говорят что таким образом невозможно получить фактический текст из файла который преобразован в varbinary. Помогите пожалуйста как можно реализовать считывание файла, путем передачи его с бэка без сохранения на диске, и чтобы он после этого полностью записался в таблицу базы данных построчно.
0
Заказывайте контрольные, курсовые и дипломы здесь.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.10.2020, 17:40
Ответы с готовыми решениями:

Передача данных между приложениями без сохранения буферного файла
Здравствуйте! Я создаю на C# библиотеку, которая реализует интеграцию 2 приложений - КОМПАС 3D и...

Передача файла через буфер обмена RDP и его запуск
вот код он входит в rdp надо добавить в него что бы он после входа брал файл передавал его в rdp...

Создать и скачать файл без сохранения на диске
Доброго времени суток, в названии отражается суть вопроса, если не трудно простой пример, если...

Visual Studio Code Есть ли поддержка сохранения файла в 2х местах или запуска батника после сохранения
Здравствуйте. Кто знает есть ли в Visual Studio Code возможность сохранять файцл в 2х местах или...

7
16 / 15 / 2
Регистрация: 11.05.2018
Сообщений: 143
09.10.2020, 14:26 2
Почему Mongodb не использовать?
0
2264 / 1722 / 511
Регистрация: 02.08.2011
Сообщений: 4,914
09.10.2020, 14:42 3
Цитата Сообщение от swift_rx Посмотреть сообщение
же его считать построчно в базу данных
Если получаете структурированные табличные данные из файла (csv), то разбирайте поток прямо в памяти (например, с помощью CsvHelper, если это csv), и вставляйте коллекцию в таблицу.
0
0 / 0 / 0
Регистрация: 05.04.2019
Сообщений: 17
09.10.2020, 18:47  [ТС] 4
Спасибо, ответы прочитал, сейчас почитаю про mongodb и csvhelper. Позже сообщу о результате

Добавлено через 3 минуты
mongodb сразу не подходит, база уже функционирует для реального проекта, проблема в том что она на удаленном компе, и моя задача засунуть данные из txt/csv файла(внутри очень много строк) и засунуть их в БД MS SQL, в данный момент работает так что на бэке разделяет на строки и столбцы и засовывает в базу, это очень медленный ход(данные могут загружаться от 2х часов). Поэтому дальше ищу как файл засунуть в базу и скриптом SQL полностью считать его во временную таблицу, а потом замержить с существующей
0
2264 / 1722 / 511
Регистрация: 02.08.2011
Сообщений: 4,914
09.10.2020, 18:59 5
C#
1
2
3
4
5
6
using (var reader = new StreamReader("path\\to\\file.csv"))
using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture))
{    
    csv.Configuration.HasHeaderRecord = false;
    var records = csv.GetRecords<Foo>();
}
Только в вашем случае вы передаете стрим файла, который был отправлен, а не стрим с диска.
Тут нечего писать, и нафиг никакие mango, mongo или как-это называется, не нужны.
0
869 / 658 / 214
Регистрация: 30.04.2009
Сообщений: 2,748
13.10.2020, 01:03 6
swift_rx, парсить файл и записывать результаты в базу можно ОЧЕНЬ РАЗНЫМИ способами с очень разными по скорости результатами. В тысячи раз.
0
267 / 154 / 44
Регистрация: 05.07.2018
Сообщений: 493
13.10.2020, 01:53 7
Цитата Сообщение от IamRain Посмотреть сообщение
и нафиг никакие mango, mongo или как-это называется, не нужны.

Не по теме:


Mongo) Хороший инструмент, откуда столько пренебрежения то?

0
Эксперт .NET
8875 / 6184 / 1033
Регистрация: 21.01.2016
Сообщений: 23,366
13.10.2020, 10:48 8
Цитата Сообщение от swift_rx Посмотреть сообщение
в данный момент работает так что на бэке разделяет на строки и столбцы и засовывает в базу, это очень медленный ход(данные могут загружаться от 2х часов)
Что-то мне подсказывает, что медленный тут не ход, а именно ваша реализация.

Не по теме:

Цитата Сообщение от aenye Посмотреть сообщение
Mongo) Хороший инструмент, откуда столько пренебрежения то?
У многих эта СУБД ассоциируется с хипстерами в подвёрнутых штанах)

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.10.2020, 10:48

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Какое нужно вызвать событие после сохранения файла на диске
У меня программа обрабатывает файлы, которые появляются в определенной папке. Как сделать, чтобы...

Надо закрыть через VBA Excel ,без сохранения и без выскакивания запросов на сохранеие
Помогите чайнику.Надо закрыть через VBA Excel ,без сохранения и без выскакивания запросов на...

Передача дин массива без сохранения изменений
Мне необходимо передать динамический массив в функцию, там ее изменить, сложить, перемножить и...

Установка Кали Линукс 2018.4 на флэшку с возможностью сохранения
Всем привет,помогите пж. Установил kali linux на флешку, с запуском всё нормально,но ничего не...

radmin или rdp через интернет
подскажите, пожалуйста! на работе сеть из 30пк, надо зайти через интернет из дома на один комп в...

RDP (или аналог) через tor
Имеется компьютер с одним монитором, компьютер имеет доступ в интернет, но не имеет внешнего ip...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.