강좌
클라우드/리눅스에 관한 강좌입니다.
데이터베이스 분류

*.sql 파일로 쉘에서 SQL명령어 실행

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

icon01.giftitle16.gif

유닉스쉘 프롬프트에서 SQL명령어 실행하기

 

일반적인 방법은 아니지만 현재는 쉘프로그램등에서 데이터베이스를 활용하기 위한 용도로 SQL문이 저장된 파일(*.sql)을 유닉스쉘프롬프트상태에서 실행하는 경우가 많이 있습니다.

그 방법은 간단하면 다음과 같습니다.

 

1. 데이터베이스를 생성하는 test.sql파일 실행하기

첫 번째 실행할 SQL문의 내용을 저장한 sql파일을 만듭니다.

이때, sql파일의 확장자는 당연히 *.sql이 되어야합니다.

예로서 다음과 같은 내용을 저장하고 있는 test.sql이라는 파일을 만들어 보겠습니다.

test-sql.gif

test.sql파일은 위와 같은 mysql 구문을 포함한 파일입니다.

즉, 이 파일을 실행하게되면 testdatabase라는 이름을 가진 데이터베이스가 생성이 될 것입니다.

 

다음은 test.sql을 유닉스쉘프롬프트상에서 실행시킨 예입니다.

mysql-uroot-test-sql.gif

아무런 메시지가 없이 종료되었다면 정상적으로 종료가 된 것입니다.

 

그렇다면 결과를 좀더 정확히 확인해 보기위하여 mysql이라는 데이터베이스로 접속하여 testdatabase라는 이름의 데이터베이스가 생성이 되었는가를 확인해 보겠습니다.

mysql-u-root-p.gif

 

그런다음, show databases라는 구문으로 좀전에 실행했던 test.sql내의 구문이 정상적으로 실행이 되었는가를 확인하기위해 testdatabase라는 이름의 데이터베이스가 존재함을 확인해 본 것입니다.

show-databases3.gif

 

2. 테이블을 생성하는 testtable.sql파일 실행하기

 

이번에는 테이블을 생성하는 테이블생성문을 sql파일로 만들어서 쉘프롬프트에서 실행시켜보겠습니다.

 

보시는 바와같이 testtable.sql이라는 파일의 내용은 두 개의 필드를 가진 구문으로 되어있습니다.

testtable-sql.gif

다음과 같이 testdatabase라는 데이터베이스에 testtable.sql에 있는 내용을 실행시키는 것입니다.

즉, 이 파일을 실행시키고 나면 위의 내용처럼 testtable이라는 테이블이 testdatabase내에 생성이 될 것입니다.

mysql-uroot-testtable-sql.gif

 

이제, 확인을 위해서 mysql로 접속을 하면서 testdatabase라는 데이터베이스로 접속을 한 것입니다.

mysql-u-root-p-testdatabase.gif

그리고 show tables라는 명령어로 testtable이 생성된 것을 확인한 것입니다.

 

위의 두가지 예 외에도 모든 sql문이 이런식으로실행이 가능합니다.

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,810 개
  • 현재 접속자 :  91 명