Rechercher : dans
Par :

Export sql to csv

Dernière réponse le 3 avr 2008 à 19:13:03 sim, le 28 mar 2008 à 17:10:22 
 Signaler ce message aux modérateurs

Bonjour à tous,
je cherche un moyen d'exporter une table SQL en CSV.
Je recherche plus précisement une requête sql.
Merci à tous !

Configuration: Linux Debian
Mozilla 1.8.1.3

Meilleures réponses pour « Export sql to csv » dans :
Exporter à coup sûr du CSV VoirExporter des données au format CSV n'est pas si trivial qu'il n'y paraît. Dès que vos données contiennent des virgules ou des guillemets, tout semble partir en vrille. Il y a une astuce. Voici comment procéder pour exporter à coup sûr vos...
Excel - Convertir fichier(s) CSV / XLS VoirComme dit dans le titre, cette application convertit des fichiers CSV en fichiers XLS N’est pas nécessaire pour Excel 2007, ce dernier faisant la conversion automatiquement La conversion n’ayant pas de mise en forme, en cas de modification...
Importer et exporter des données sous MySQL VoirImportation et exportation Les Système de Gestion de Bases de Données tels que MySQL permettent de manipuler facilement et avec beaucoup de souplesse un très important volume de données. Toutefois, aussi robuste soit MySQL, il peut être intéressant...

1

Rodbertus, le 28 mar 2008 à 17:40:30
  • +1

Voici un exemple qui fonctionne sous Oracle à partir d'un script (pour d'autres bases, il faudra adapter, il y a des commande spécifiques).

Le 1er SELECT génère la ligne 1 (nom des colonnes)
Le 2ème est un SELECT (ici figuré par des constantes) qui ne retourne qu'une seule colonne issue de la concaténation des différents champs.
Les commandes SET empêchent les affichages indésirables.
La commande SPOOL force l'affichage vers le nom de fichiers spécifié.


----------------------- début du sql -------------------------------------

set echo off;
set head off
set pagesize 0
set feedback off
set termout off


spool MyFile.csv

SELECT '"Titre1";"Titre2";"Titre3"' from dual
;

SELECT
'"'|| 'champ1' ||'";"'
|| 'champ2' ||'";"'
|| 'champ3' ||'"' as lig
FROM
dual
WHERE
1=1
;
spool off;
exit;

---------------------- fin du sql -------------------

Répondre à Rodbertus

2

sim, le 2 avr 2008 à 22:51:02
  • +1

Merci pour cette réponse. Mais je comprends pas vraiment.
Voila ce que j'ai reussi a faire :

<?php

	
		$server="localhost";
		$user="root";
		$password="";
		$db="born2dev";
		
		

$db = mysql_connect($server, $user, $password); // connexion à la base
mysql_select_db($db); // sélection de la base

$req = mysql_query("SELECT * FROM news"); // on sélectionne les enregistrements
$res = count($req);

$file = ("bdd_fichier.xls"); // le fichier doit déjà exister
if(!$myfile = fopen($file, "w")) //on ouvre le fichier
{
print("erreur: ");
print("'$filename' n'existe pas!\n");
exit;
}

WHILE($res!=$i) // 5. chaque fois que "$res" est dif. de "$i", donc qu'il y a un enreg.

{
$numero = mysql_result($req,$i,"***"); // on récupère les champs




//ecriture


fputs($myfile,"$id_com\t $id_news\t $nom\t $email\t $siteweb\t $com\n"); //on insère une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne


$i++; // 8. on ajoute un au compteur et on retourne à WHILE
}

//fermeture fichier
fclose($myfile); //on ferme le fichier
echo "<center><h2>La table a été sauvegardée...</h2></center>";

mysql_close(); // 9. on ferme la connexion
?>


<form name="form0">
<center><br><br><input type="button" value="Fermer" onClick="self.close()" name="button3"></center>
</form> 
	
	


Problème : il m'affiche ça :

Warning: mysql_result(): supplied argument is not a valid MySQL result resource in h:\Sites\tests\affichertexte.php on line 35


merci!

Répondre à sim

3

 sim, le 3 avr 2008 à 19:13:03

Personne pour m'aider ?

Répondre à sim