Salida standard no hace nada
-
Hola,
Soy nuevo en esto y trato de aprender. He buscado un ejemplo en internet que vuelca el contenido de una tabla MySQL en la consola (salida standard).
Este es mi código,
@
#include <QtCore/QCoreApplication>
#include <QtSql>
// #include <qtextstream.h>
#include <QTextStream>
#include <QString>
#include <iostream>using namespace std;
int main(int argc, char *argv[]) {
QCoreApplication a(argc, argv);
//--- use a QTextStream: it makes it easier to output ---
//--- QString to cout. ---
QTextStream cout(stdout, QIODevice::WriteOnly);//--- define the database connection --- QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); // host db.setDatabaseName("QtDummy"); // database db.setUserName("miuser"); // user db.setPassword("mipass"); // password //--- attempt to open it --- bool ok = db.open(); if ( ok ) { //--- we're good! --- cout << "Database open\n"; //--- run a query and print data returned --- QSqlQuery query( "select * from dummy" ); if ( !query.isActive() ) cout << "Query Error" + query.lastError().text() << endl; else while (query.next()) { int Id = query.value(0).toInt(); QString word = query.value(1).toString(); cout << QString( "%1\t%2\n").arg( Id ).arg( word ); } //--- add a new entry to the table --- query.prepare( "INSERT INTO dummy (word) VALUES ( :word )" ); query.bindValue( ":word", "Banana" ); query.exec(); //--- close connection to database db.close(); } else { //--- something went wrong --- cout << "Error opening database\n"; } return 0;
}
@La questión es que no sale nada, ni mensaje de warning,
ni mensaje de error ni resultados en la consulta.He comentado el código y poner solo cout << "Hola mundo\n" y tampoco
sale nada.Trabajo con Qt Creator 2.4.1 en Ubuntu 12.04.
Gracias de antemano,
oggie -
Aquí está la respuesta a mi problema,
"Configurar terminal":http://qt-project.org/forums/viewthread/17650
Con esto ya funciona bien.
Un saludo,
oggie