Mac コマンドラインでは、
$ sql -u foo -pbar db -B -e "SELECT * FROM t" > output.txt
コマンドをインラインで入力する必要があります。
ファイル foo.sql で SQL ステートメントを実行し、結果をタブ区切り形式で別のファイルにエクスポートする方法は?
編集
私がする時
mysql -h localhost -u foo -pbar db -B -e "SELECT * FROM t WHERE x='{}' LIMIT 2 INTO OUTFILE '../o.tsv';"
エラーが発生しました
ERROR 1045 (28000) at line 1: Access denied for user 'foo'@'localhost' (using password: YES)
しかし不思議なことに、
mysql -h localhost -u foo -pbar db
mysql コマンド プロンプトが正常に表示されます。利用には特別な権限OUTFILE
が必要ですか?foo
mysql> SELECT * FROM user WHERE User='foo'\G
*************************** 1. row ***************************
Host: localhost
User: foo
Password: *A5DB2D927D6DF94DA5E1CE4B2AEAAB4D8304EA
Select_priv: N
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
Shutdown_priv: N
Process_priv: N
File_priv: N
Grant_priv: N
References_priv: N
Index_priv: N
Alter_priv: N
Show_db_priv: N
Super_priv: N
Create_tmp_table_priv: N
Lock_tables_priv: N
Execute_priv: N
Repl_slave_priv: N
Repl_client_priv: N
Create_view_priv: N
Show_view_priv: N
Create_routine_priv: N
Alter_routine_priv: N
Create_user_priv: N
ssl_type:
ssl_cipher:
x509_issuer:
x509_subject:
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
1 row in set (0.01 sec)