「MySQL - その他」の版間の差分

ナビゲーションに移動 検索に移動
32行目: 32行目:
  rm ~/mysql-init
  rm ~/mysql-init
<br><br>
<br><br>
== 複数行のコマンド ==
MySQLのコマンドラインでは、複数行に渡ってコマンドを記述する方法がいくつか存在する。<br>
<br>
* セミコロンを使用する方法
*: MySQLクライアントでは、セミコロン (;) がクエリの終わりを示す。
*: そのため、セミコロンを入力するまでは、改行してもクエリが続いているとみなされる。
<syntaxhighlight lang="mysql">
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS,
      REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES,
      LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW,
      SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER,
      EVENT, TRIGGER
      ON *.*
      TO 'hoge'@'localhost'
      WITH GRANT OPTION;
</syntaxhighlight>
<br>
* バッククォート (`) を使用する方法
*: MySQL 5.7以降では、バッククォートを使用して複数行のステートメントを記述することができる。
<syntaxhighlight lang="mysql">
`GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS,
        REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES,
        EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW,
        CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER
        ON *.*
        TO 'hoge'@'localhost'
        WITH GRANT OPTION`;
</syntaxhighlight>
<br>
* MySQLクライアント専用コマンドを使用する方法
*: MySQLクライアントにおいて、\を行末に使用して複数行のクエリを記述することが可能であるが、デフォルトでは無効になっている。
*: 有効にする場合は、MySQLクライアントの起動時に<code>--line-numbers</code>オプションを使用する、または、クライアント内で<code>prompt \n-></code>コマンドを実行する。
<syntaxhighlight lang="mysql">
-- 改行 (\) を有効にする
prompt \n->
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS,                  \
      REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, \
      EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW,        \
      CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT,                              \
      TRIGGER ON *.*        \
      TO 'hoge'@'localhost' \
      WITH GRANT OPTION;
-- 改行 (\) を無効にする (プロンプトを元の状態に戻す)
prompt mysql>
</syntaxhighlight>
<br><br>


__FORCETOC__
__FORCETOC__
[[カテゴリ:MySQL]]
[[カテゴリ:MySQL]]

案内メニュー