Maison >base de données >tutoriel mysql >Comment exporter les résultats d'une requête SQLPLUS vers un fichier CSV ?
*Exportation SQLPlus des résultats de requête vers CSV**
Problème : Comment exporter les résultats d'une requête SQL*Plus directement dans un fichier CSV ?
Solution :
SQL*Plus offre une méthode simple pour mettre en file d'attente la sortie des requêtes dans un fichier CSV. Suivez ces étapes :
<code class="language-sql">SET COLSEP ',' -- Set comma as column separator SET PAGESIZE 0 -- Suppress header rows SET TRIMSPOOL ON -- Remove trailing whitespace SET HEADSEP OFF -- Remove header separation (optional) SET LINESIZE X -- Adjust line width (X = sum of column widths) SET NUMW X -- Adjust numeric field width (X = appropriate value to avoid scientific notation) SPOOL myfile.csv -- Specify output file name SELECT table_name, tablespace_name FROM all_tables WHERE owner = 'SYS' AND tablespace_name IS NOT NULL; SPOOL OFF -- Close the spool file</code>
Cela crée myfile.csv
avec des valeurs séparées par des virgules, sans lignes d'en-tête et des espaces coupés. Un exemple de résultat pourrait ressembler à :
<code>TABLE_PRIVILEGE_MAP,SYSTEM SYSTEM_PRIVILEGE_MAP,SYSTEM STMT_AUDIT_OPTION_MAP,SYSTEM DUAL,SYSTEM ...</code>
Pour un nettoyage supplémentaire, supprimez les espaces avant les virgules à l'aide d'une commande telle que :
<code class="language-bash"> sed 's/\s\+,/,/g' myfile.csv > myfile_cleaned.csv ``` This creates a new file `myfile_cleaned.csv` with the extra whitespace removed.</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!