• Страница 1 из 1
  • 1
Архив - только для чтения
Модератор форума: andycrowz  
[Решено]Обновить одним скриптов все SQL для одного database
DDS
Скаут
Есть свежая БД и куча обновлений для нее, нужно написать небольшой скрипт \ батник и т.д. для обновления одной базы данных, например world, всеми SQL update-тами, не кликая по 1000 раз в Navicat (или другом SQL viewer-е) "Execute SQL File...".
Питался писать пока так
Код

for %%G in (*.sql) do SOURCE /S OregonCore /d characters -E -i"%%G"
pause

Но ничего не вышло, ошибка "SOURCE не является внутренней командой".
PS: в принципе ошибку я знаю, но хотелось бы послушать и возможные решения самой проблемы.
Сообщение # 1 отредактировано DDS - Понедельник, 30.03.2015, 18:08
infinium
Маршал
Код
@echo off
setlocal EnableDelayedExpansion
set WorldUpdates=All_World_Updates.sql
set CharactersUpdates=All_Characters_Updates.sql
set AuthUpdates=All_Auth_Updates.sql

if exist %CharactersUpdates% del %CharactersUpdates%
if exist %AuthUpdates% del %AuthUpdates%
if exist %WorldUpdates% del %WorldUpdates%

for %%a in (sql\updates\world\*.sql) do (
echo /* >>%WorldUpdates%
echo * %%a >>%WorldUpdates%
echo */ >>%WorldUpdates%
copy/b %WorldUpdates%+"%%a" %WorldUpdates%
echo. >>%WorldUpdates%
echo. >>%WorldUpdates%)

for %%a in (sql\updates\characters\*.sql) do (
echo /* >>%CharactersUpdates%
echo * %%a >>%CharactersUpdates%
echo */ >>%CharactersUpdates%
copy/b %CharactersUpdates%+"%%a" %CharactersUpdates%
echo. >>%CharactersUpdates%
echo. >>%CharactersUpdates%)

for %%a in (sql\updates\auth\*.sql) do (
echo /* >>%AuthUpdates%
echo * %%a >>%AuthUpdates%
echo */ >>%AuthUpdates%
copy/b %AuthUpdates%+"%%a" %AuthUpdates%
echo. >>%AuthUpdates%
echo. >>%AuthUpdates%)
Сообщение # 2 написано 29.03.2015 в 19:03
DDS
Скаут
Вполне неплохо, только я все равно сделал по "глупому": массово переименовал все sql в txt через TotalCommander, затем через TXTCollector объединил в один файл, а потом, через notepad заменил все "разделяющие символы" и полный путь в начале каждого добавленного текста на коммент "--", и переименовал обратно в sql.
Сообщение # 3 написано 30.03.2015 в 18:08
20092009
Скаут
зачем изобретать велосипеды??
https://github.com/TrinityCore/TrinityCore/blob/6.x/contrib/merge_updates_windows.bat
Сообщение # 4 написано 30.03.2015 в 19:43
  • Страница 1 из 1
  • 1
Поиск: