Как выполнять SQL-скрипт из командной строки: Batch file

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый ответ

Если вы желаете запустить SQL-скрипт из командной строки, используйте подходящий инструмент для работы с вашей базой данных:

  • MySQL/MariaDB:

    Bash
    Скопировать код
    mysql -u пользователь -p имя_базы < файл.sql
  • PostgreSQL:

    Bash
    Скопировать код
    psql -U пользователь -d имя_базы -f файл.sql
  • SQL Server:

    Bash
    Скопировать код
    sqlcmd -S сервер -d имя_базы -U пользователь -P пароль -i файл.sql
  • SQLite:

    Bash
    Скопировать код
    sqlite3 имя_базы < файл.sql

В эти команды следует вставить актуальные данные: имя пользователя, имя базы, название файла с SQL-скриптом, имя сервера и пароль. После этого вставьте команды в командную строку и запустите их.

Кинга Идем в IT: пошаговый план для смены профессии

Оптимизация SQL-команд

Используйте интегрированную безопасность с sqlcmd

В целях сохранения конфиденциальности учетных данных используйте ключ -E для активации интегрированной безопасности в sqlcmd.

Bash
Скопировать код
sqlcmd -S сервер -d имя_базы -E -i файл.sql

Выполнение отдельных команд

Для выполнения отдельных SQL-запросов и немедленного завершения сессии применяйте ключ -Q.

Bash
Скопировать код
sqlcmd -S сервер -d имя_базы -E -Q "SELECT * FROM моя_таблица"

Перенаправление вывода в файл

Чтобы перенаправить результаты выполнения скрипта в файл, используйте ключ -o.

Bash
Скопировать код
sqlcmd -S сервер -d имя_базы -E -i файл.sql -o вывод.txt

Реализация безопасности и автоматизация исполнения скриптов

Осуществляйте защиту конфиденциальных данных

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

Автоматизируйте процессы с помощью бат-файлов и sqlcmd

Совместное использование sqlcmd и бат-файлов позволит вам автоматизировать процессы работы с базой данных. Не забывайте тестировать скрипты в различных условиях.

Визуализация

Командная строка функционирует как возможность удаленного управления вашей базой данных:

Markdown
Скопировать код
1. Командная строка (🔮)
2. SQL-скрипт (📜)
3. База данных (🏰)
Bash
Скопировать код
$ sqlcmd -S ИмяСервера -d ИмяБазыДанных -E -i Скрипт.sql

С помощью командной строки вы как бы волшебник, оживляющий данные:

Markdown
Скопировать код
До: База данных (🏰) с неактивными данными (💤)
После: Оживленная и активно функционирующая база данных (🏰) с данными (✨)

Защита данных и устранение проблем с скриптами

Тестирование в непродуктивной среде

Всегда проверяйте новые скрипты в безопасной тестовой среде, чтобы не навредить рабочей системе.

Регулярное создание резервных копий

Перед запуском рискованных команд всегда создавайте свежие резервные копии баз данных.

Поиск помощи в сообществах

Если у вас возникли трудности, не задерживайтесь на проблемах, обратитесь за помощью к профессиональным сообществам и форумам по SQL.

Полезные материалы

  1. sqlcmd Utility – SQL Server | Microsoft Learn — детальное руководство по использованию sqlcmd.
  2. MySQL 8.0 Reference Manual :: 6.5.1.5 Executing SQL Statements from a Text File — руководство по запуску операторов MySQL из текстового файла.
  3. PostgreSQL Documentation: psql — документация по использованию psql.
  4. SQL*Plus User's Guide and Reference — руководство Oracle о работе со скриптами в SQL*Plus.
  5. SQLite Command Line Shell — описание работы командной строки SQLite для запуска скриптов.
  6. Oracle SQLcl — современный командный интерфейс от Oracle.
  7. Cron Jobs for Automation on Linux — руководство по настройке автоматического запуска скриптов в Linux.