0

次のクエリを実行すると、機能します。

SELECT 'INNODB_OS_LOG_WRITTEN','QUESTIONS' INTO OUTFILE 'D:/orders.csv' フィールドは ',' で囲まれ、'"' で囲まれた行は '\n' で終了します。

しかし、Windows コマンド プロンプトから、または次のコマンドを使用してバッチ ファイルからこのクエリを呼び出すと、

"%MBIN%\mysql.exe" -u"%MUSER%" -p"%MPASS%" -h "%MHOST%" -e "SELECT 'INNODB_OS_LOG_WRITTEN','QUESTIONS' INTO OUTFILE'D:/orders.csv ' で終了するフィールド ',' で囲まれる '"' で終了する行 '\n';"

実行されていません。

上記のコマンドを実行するとどうなるかを下に貼り付けます。

C:\Documents and Settings\188931>"%MBIN%\mysql.exe" -u"%MUSER%" -p"%MPASS%" -h "
%MHOST%" -e "SELECT 'INNODB_OS_LOG_WRITTEN','QUESTIONS' INTO OUTFILE 'foldrname/
orders.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';"
C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe  Ver 14.14 Distrib 5.5.16,
 for Win32 (x86)
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Usage: C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe [OPTIONS] [database
]
  -?, --help          Display this help and exit.
  -I, --help          Synonym for -?
  --auto-rehash       Enable automatic rehashing. One doesn't need to use
                      'rehash' to get table and field completion, but startup
                      and reconnecting may take a longer time. Disable with
                      --disable-auto-rehash.
                      (Defaults to on; use --skip-auto-rehash to disable.)
  -A, --no-auto-rehash
                      No automatic rehashing. One has to use 'rehash' to get
                      table and field completion. This gives a quicker start of
                      mysql and disables rehashing on reconnect.
  --auto-vertical-output
                      Automatically switch to vertical output mode if the
                      result is wider than the terminal width.
  -B, --batch         Don't use history file. Disable interactive behavior.
                      (Enables --silent.)

私が指摘したもう1つのことは、次を実行したときです。

"%MBIN%\mysql.exe" -u"%MUSER%" -p"%MPASS%" -h "%MHOST%" -e "SELECT 'INNODB_OS_LOG_WRITTEN','QUESTIONS';"

コマンドプロンプトまたはバッチファイルから実行されます(注-csvエクスポートを削除しました)。

そのため、csv への OUTFILE を持つバッチ ファイル (または Windows コマンド プロンプト) からクエリを実行する組み合わせが機能していないようです。

どんな体でもこれについて親切に助けてくれますか..

4

1 に答える 1

0

"記号をエスケープする必要があります-

ENCLOSED BY '"'

変更:

ENCLOSED BY '\"'
于 2012-10-26T06:35:01.240 に答える