les opérations de base de données pour les programmeurs est chose courante, mais quand les gens nous demandent d'avoir des données d'affaires, il est certainement pas les données froides directement à eux, au moins pour générer un excel, donc ici que nous utilisons par rapide générer excel commande de fichier pour résoudre ce problème.
Laissez générer facilement une table de cas d'utilisation
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
Grâce à cette commande pour générer 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
De toute évidence, cette directive est problématique, alors nous cherchons à trouver la cause de l'erreur selon le code d'erreur.
En gros sens de cette déclaration est la suivante :
fichier chemin d'importation et d' exportation MySQL a un paramètre par défaut est sécurisé-file-PRIV, lorsqu'il est passé dans le chemin de fichier csv et le chemin par défaut erreur de conflit est signalé.
Il y a est sécurisé mot clé-file-PRIV, nous arrivons à regarder ses paramètres par défaut:
SHOW VARIABLES LIKE '%secure%';
Regardez les résultats:
Ici vous pouvez voir, par défaut secure_file_priv est C: \ ProgramData \ MySQL \ MySQL serveur 5.7 \ \ Uploads.
A propos secure_file_priv cette valeur, il peut avoir trois cas:
1.secure_file_prive = null - ne permettent pas l' importation et l' exportation
2.secure_file_priv = / path / - ne permet l' importation et l' exportation dans le répertoire par défaut
3.secure_file_priv = « » - Importation et exportation illimité
peut être vu ici est la valeur par défaut du second cas, dans ce cas, puisque nous pouvons modifier cette commande :
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
Voici un succès