보통 sql 파일들은 데이터를 보관하고 있는 형태의 백업 파일이 대부분입니다. 하지만 sql 파일에 특정한 동작을 조작하는 실행 명령이 있을 경우 특수한 쿼리 문법으로 외부의 sql 파일을 실행할 수 있습니다.
다음과 같이 SOURCE 명령은 외부에 저장된 SQL 명령문 파일을 읽어서 실행할 수 있습 니다.
| 쿼리 문법 |
SOURCE 파일명
만일 다음과 같은 예제 sql 파일이 있다고 합시다.
예제 파일 | source.sql
use jiny;
select * from members;
그리고 SOURCE 명령을 통하여 이 외부 sql 파일을 실행합니다.
| 쿼리 문법 |
SOURCE source.sql;
| 콘솔 실습 화면 |
mysql> SOURCE source.sql;
Database changed
+----+----------+-----------+-------------+-------+---------+-----------+-------------------+
| Id | LastName | FirstName | Address | City | Country | manager | email |
+----+----------+-----------+-------------+-------+---------+-----------+-------------------+
| 1 | hojin | lee | shinchon | seoul | korea | infohojin | hojin@jinyphp.com |
| 2 | jiny | NULL | NULL | NULL | korea | infohojin | jiny@jinyphp.com |
| 3 | james | kim | youngdun-po | seoul | korea | info | james@jinyphp.com |
+----+----------+-----------+-------------+-------+---------+-----------+-------------------+
3 rows in set (0.00 sec)
위의 예처럼 외부에 저장된 sql 명령 파일을 읽어서 실행한 결과를 출력합니다.
02.8.1 외부 실행
mysql>
명령 입력창에서 SOURCE 명령을 통하여 외부 파일을 실행할 수도 있지만, 윈 도우 커맨드 창/리눅스 터미널에서 mysql 명령을 통하여 외부 실행이 가능합니다.
mysql 명령을 통하여 외부 실행을 할때는 옵션 -e
를 같이 사용합니다.
| 명령 |
mysql -u계정명 -p패스워드 -e “SOURCE 파일명”