Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
 Аватар для couch1991
16 / 16 / 1
Регистрация: 17.09.2010
Сообщений: 73

Загрузка всех файлов директории в базу данных MySQL

16.01.2013, 17:24. Показов 3673. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем!
Второй день ни как не могу решить задачу, что бы батник выгружал все txt и htt файлы с определенной директории в базу данных mysql в поле с расширением blob. Вот то до чего додумался, что бы батник брал каждый файл с директории и ... и далее не знаю как.. пробовал запихать данные с файла в буфер при помощи cmd но вытащить данные с буфера не могу( Как можно решить такую проблему??
Вот пример кода того что у меня есть:
Bash
1
2
3
4
5
6
7
@echo 
cd ..
cd ..
Set Folder= templates
Set file=K:\1.txt
For %%I In (%Folder%\*) Do  %%I
pause
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.01.2013, 17:24
Ответы с готовыми решениями:

Парсинг и загрузка CSV файла в базу данных MYSQL
Есть файл CSV с таким форматом данных: 0,Name0,Name_Trans0,price0,small_text0,big_text0 ...

Загрузка нескольких текстовых файлов в базу данных
ПРОШУ ПОМОЧЬ USER`у!!! Тема такая: Постановка задачи: 1. по нажатию кнопки на форме ACCESS вызвать процедуру открытия стандартного окна...

Вывод всех файлов и поддиректорий в заданной директории (добавить в код ввод директории)
.586p .model flat, stdcall std_output_handle equ -11 std_input_handle equ -10 extern wsprintfA:near extern CharToOemA@8:near ...

8
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18031 / 7734 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
16.01.2013, 18:07
А при чем здесь буфер?
Цитата Сообщение от couch1991 Посмотреть сообщение
выгружал все
Честно говоря даже специалист по БД не смог объяснить мне чего Вы хотите сделать.
Цитата Сообщение от couch1991 Посмотреть сообщение
поле с расширением blob
Что такое расширение поля?

Какой принцип выгрузки?
1
 Аватар для couch1991
16 / 16 / 1
Регистрация: 17.09.2010
Сообщений: 73
16.01.2013, 19:08  [ТС]
ну вот: например у меня есть директория в которой хранятся файлы txt и htt формата, мне нужно что бы скрипт брал каждый файл с этой директории и его содержание загружал в базу данных, поле в базе данных имеет тип BLOB.
Извините, что может не совсем корректно в первый раз объяснил.

Добавлено через 1 минуту
Просто я думал может выгружать файл в буфер потом с буфера доставать и пихать в sql запрос) но видимо это глупая идея)
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18031 / 7734 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
16.01.2013, 23:45
Bash
1
echo INSERT INTO tablename ^(col1^) VALUES^('data1'^) | MySQL.exe -uroot -ppass
Нечто вроде такого (одна строка).
Можно построчно весь файл загнать, но это будет - каждая строка - новая запись.

А вообще такое лучше (правильнее) на VBScript делать.
1
 Аватар для couch1991
16 / 16 / 1
Регистрация: 17.09.2010
Сообщений: 73
17.01.2013, 14:33  [ТС]
А разве под VBScript компилятор не нужен? Простите за наглость, но хотя бы примерно как этот код будет выглядить на VBScript? Спасибо)

Добавлено через 1 час 57 минут
Спасибо) Разобрался) вот код:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
@echo off
setlocal ENABLEDELAYEDEXPANSION
cd ..
cd ..
Set Folder= templates
For %%M In (%Folder%\*) Do (
for /f "delims=" %%i in (%M%) do (
    set out=%%i
   echo INSERT INTO templates ^(Value^) VALUES^('!out!'^) | MySQL.exe -u root -p
   )
)%%M
pause
Но теперь появилась новая задача(.. нужно читать файл в binary mode то есть передавать файл бинарно в базу( Есть ли какая то возможность это сделать при помощи cmd? Спасибо)
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18031 / 7734 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
17.01.2013, 22:17
cd ..
cd ..
зачем - чтобы перейти в корень системного диска? - тогда так:
Bash
1
cd /d %systemdrive%
или сразу подставить в цикл:

Bash
1
2
3
4
5
6
set folder=templates
for /f "delims=" %%i in ('dir /b "%systemdrive%\%folder%\*.*"') do (
  for /f "delims=" %%j in (%%i) do (
    echo INSERT INTO templates ^(Value^) VALUES^('%%j'^) | MySQL.exe -u root -p
  )
)
1
 Аватар для couch1991
16 / 16 / 1
Регистрация: 17.09.2010
Сообщений: 73
18.01.2013, 01:42  [ТС]
cd ..
cd ..
Что бы подняться на два уровня выше, так как файлы лежат выше того места откуда будет запускаться скрипт)

Добавлено через 4 минуты
Bash
1
2
3
4
5
6
7
8
9
10
11
@echo off
setlocal ENABLEDELAYEDEXPANSION
cd ..
cd ..
set folder=templates
for /f "delims=" %%i in ('dir /b "%folder%\*.*"') do (
  for /f "delims=" %%j in (%%i) do (
    echo INSERT INTO templates ^(Value^) VALUES^('%%j'^) | MySQL.exe -u root -p
  )
)
pause
Пишет не удается найти файл 1.txt
не удается найти файл 2.jpg
и так далее..
но почему? я ведь только убрал %systemdrive%...
1
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18031 / 7734 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
18.01.2013, 02:05
Вместо строки № 7 попробуйте конструкцию:
Bash
1
for /f "UseBackQ delims=" %%j in ("%folder%\%%i") do (
1
 Аватар для couch1991
16 / 16 / 1
Регистрация: 17.09.2010
Сообщений: 73
18.01.2013, 16:08  [ТС]
Спасибо)

Добавлено через 10 минут
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@echo off
setlocal ENABLEDELAYEDEXPANSION
cd ..
cd ..
cd templates
echo filename type values
for /r %%f in (*.*) do (
                   set filename=%%~nf  
                   set type=%%~xf
                   set values=%%f
 echo !filename!     !type!      !values!
echo INSERT INTO Templates (Ident,Type,Value) VALUES ("!filename!","!type!",LOAD_FILE('!values!')); | mysql -u root -p
)
pause
Пример кода который записывает бинарно файл в блоб MySQL
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.01.2013, 16:08
Помогаю со студенческими работами здесь

Одновременное добавление данных в MySQL таблицу и загрузка файлов
Можно ли сделать так, чтобы по нажатию на кнопку одновременно в таблицу добавлялись данные (POST) и на сервер загружалось несколько...

Загрузка списка файлов в listBox в указанной директории
Привет. Есть папка, в которой лежит большое количество .docx файлов с разной инфой внутри. Задача: программа, в которой будут отображаться...

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

Загрузка изображения в базу MYSQL
Помогите пожалуйста не загружается фотография в базу в чем проблема ? Функция для добавления изображения function AddImage($image){ ...

Удаление всех файлов в директории
Как удалить все файлы в произвольной директории path?


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru