2012-03-15 1 views
0

В чем разница между этими двумя командами, используемыми для извлечения таблиц из базы данных в одну, которая может использоваться mysql?различная командная строка, используемая для извлечения таблиц из файла sql-сервера в файл, который может использоваться mysql

C:> mysql -u user -p PASS database_name < ms.sql 

И

mysql> source ms.sql ; 

я делал с первым и базами данных, созданными содержал всю информацию, но это не сработало. вторая работала нормально.

Вторым в первом случае является установка набора символов по умолчанию, но на главной странице mysql я не нашел примера для второго случая. Я благодарен за любую доступную помощь.

ответ

0

Обе команды могут быть отнесены к пакетным командам. Я указываю разницу между ними ниже.

Первая команда

mysql -u user -p PASS database_name < ms.sql 
  • Приведенная выше команда выполняет две команды одновременно. Один из них - loggin для MySQL, а другой - передача файла сценария для выполнения с использованием операционного оператора ввода-вывода операционной системы '<'.
  • После выполнения этой команды будет отображаться результат SQL скрипта и возвращается к командной строке. (Выходит из SQL Prompt)
  • Необходимо держать команду USE DB_NAME в begening файла для выполнения сценарий
  • Этот способ полезен, когда вы хотите выполнить большой скрипт, который обычно не используется в mysql.

Вторая команда

mysql> source ms.sql; 
  • Эта команда обычно является SQL Command, который будет выполнять скрипт, присутствующий в SQL-файл.
  • Он используется, если вы уже находитесь в запросе MYSQL. После выполнения сценария он вернется в Mysql только подсказать
  • Вы можете также использовать эту команду как выполнение сценария оболочки нечто вроде mysql> ./filename

Для получения дополнительной информации, пожалуйста, смотрите MySql Ссылка Ссылка: https://dev.mysql.com/doc/refman/5.7/en/mysql-batch-commands.html