プログラマのためのデータベース操作ので、ここで私たちが使用する急速を通じて、当たり前の事ですが、人々は、ビジネス・データを持っているために私たちを頼むとき、それは少なくとも、Excelを生成するために、それらに直接確かに寒いのデータではありませんこの問題を解決するために、Excelファイルのコマンドを生成します。
容易にユースケーステーブルを作成してみましょう
CREATE TABLE `t_cm_address` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`key` varchar(255) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8
Excelを生成するには、このコマンドによって
SELECT id,address FROM `t_cm_address` INTO OUTFILE 'D:/a/address.xls'
1 queries executed, 0 success, 1 errors, 0 warnings
查询:select id,address from `t_cm_address` into outfile 'D:/a/address.xls'
错误代码: 1290
The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
执行耗时 : 0 sec
传送时间 : 0 sec
总耗时 : 0 sec
明らかに、このディレクティブは、その後、我々は、エラーコードに応じて、エラーの原因を見つけるために、問題を見ています。
大雑把にこの文の意味は次のとおりです。
インポートおよびエクスポートパスMySQLのファイルはcsvファイルパスに渡され、デフォルトのパスの競合エラーが報告されている場合、セキュアなファイル・PRIVでデフォルト設定があります。
そこのキーワードは、その後、私たちはそのデフォルト設定を見に来て、セキュアなファイル-PRIVです:
SHOW VARIABLES LIKE '%secure%';
結果を見て:
ここではあなたが見ることができ、secure_file_privはデフォルトではC:\はProgramData \のMySQL \ MySQLのサーバ5.7 \アップロード\。
secure_file_privこの値について、彼は3例持つことができます。
1.secure_file_prive =ヌル-インポートおよびエクスポート許可していない
だけで、デフォルトのディレクトリにインポートおよびエクスポートすることができます- 2.secure_file_priv = /パス/
3.secure_file_priv =「」 -インポートとエクスポート無制限は
ここで見ることができ、我々は、この変更することができますので、後者の場合のデフォルト値は、その場合には、コマンドを:
SELECT id,address FROM `t_cm_address` INTO OUTFILE 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/address.xls'
1 queries executed, 1 success, 0 errors, 0 warnings
查询:select id,address from `t_cm_address` into outfile 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/address.xls'
共 4 行受到影响
执行耗时 : 0.001 sec
传送时间 : 0 sec
总耗时 : 0.002 sec
ここでの成功は、