Question
Lors de l'exécution de requêtes de ligne de commande dans MySQL, vous pouvez éventuellement utiliser ' \ G ' comme terminateur d'instruction. Au lieu que les résultats soient affichés horizontalement à l'écran, ils répertorient chaque colonne. verticalement, avec les données correspondantes à droite. Existe-t-il un moyen identique ou similaire d'utiliser l'utilitaire de ligne de commande DB2?
Exemple de résultat MySQL normal
mysql> select * from tagmap limit 2;
+----+---------+--------+
| id | blog_id | tag_id |
+----+---------+--------+
| 16 | 8 | 1 |
| 17 | 8 | 4 |
+----+---------+--------+
Exemple de résultat MySQL alternatif:
mysql> select * from tagmap limit 2\G
*************************** 1. row ***************************
id: 16
blog_id: 8
tag_id: 1
*************************** 2. row ***************************
id: 17
blog_id: 8
tag_id: 4
2 rows in set (0.00 sec)
Évidemment, cela est beaucoup plus utile lorsque les colonnes sont de grandes chaînes ou lorsqu'il y a beaucoup de colonnes dans un jeu de résultats, mais cela montre mieux le formatage que je ne pourrais probablement l'expliquer.
La solution
Je ne pense pas qu'une telle option soit disponible avec le client en ligne de commande DB2. Voir http://www.dbforums.com/showthread.php?t=708079 pour quelques suggestions. Pour obtenir un ensemble d'informations plus général sur le client de ligne de commande DB2, consultez l'article IBM DeveloperWorks Processeur de ligne de commande et script de DB2 .
Autres conseils
L'utilitaire de ligne de commande DB2 affiche toujours les données au format tabulaire. c'est-à-dire des lignes horizontalement et des colonnes verticalement. Il ne supporte aucun autre format comme le terminateur d'instruction \ G ne le fait pour mysql. Mais oui, vous pouvez stocker les données organisées par colonne dans les tables DB2 lorsque DB2_WORKLOAD = ANALYTICS est défini.
db2 => connect to coldb
Database Connection Information
Database server = DB2/LINUXX8664 10.5.5
SQL authorization ID = BIMALJHA
Local database alias = COLDB
db2 => create table testtable (c1 int, c2 varchar(10)) organize by column
DB20000I The SQL command completed successfully.
db2 => insert into testtable values (2, 'bimal'),(3, 'kumar')
DB20000I The SQL command completed successfully.
db2 => select * from testtable
C1 C2
----------- ----------
2 bimal
3 kumar
2 record(s) selected.
db2 => terminate
DB20000I The TERMINATE command completed successfully.