2011年10月19日水曜日

[MySQL][コマンドライン]コマンドラインからMySQLにクエリを発行する

最初にSQLファイルを作る。(テキストファイル、拡張子は".sql")
SQLファイル内には複数のクエリを記述できる。
下記はサンプル。(SAMPLEというデータベースに、SAMPLE_TABLEというテーブルを追加)

CREATE DATABASE SAMPLE;
SHOW DATABASES;
USE SAMPLE;
CREATE TABLE SAMPLE(
    SAMPLE_ID INT AUTO_INCREMENT,
    SAMPLE_STRING VARCHAR(256),
    PRIMARY KEY(SAMPLE_ID)
    );
SHOW TABLES;

(以上、サンプル)

次にバッチファイルを作成する。
下記はサンプル。(sample.sqlというファイルに書かれたSQLを実行)

@echo off
set MYSQL_DIR="C:\Program Files\MySQL\bin"
set TEST_USER=testuser
set TEST_PASSWORD=password
set SQL_FILE=sample.sql
%MYSQL_DIR%\mysql -u%TEST_USER% -p%TEST_PASSWORD% < %SQL_FILE%
pause

(以上、サンプル)

バッチファイルを実行すると、SQLファイルの中に書かれたSQLが実行される。
なお、バッチファイルで発行するコマンドを次のように変えると、対話モードとなる。
対話モードで直接SQLを発行する場合は、こちらを利用する。

[MySQLのインストールディレクトリ]\bin\mysql -u[ユーザ名] -p

0 件のコメント:

コメントを投稿