  | | | Table() returns null | Table() returns null 2007-09-27 - By David Sevier
Back Hi,
I managed to solve my problem with the libraries not building properly by adding in some additional includes into my program. So, now at least I can connect to my database.
But now I'm having a new problem. One of the things I need to be able to do for my program is get metadata on the table that I'm pulling information from.
So I added in this code, based on some of the examples:
Query query = con.query(); String QueryString = "select * from diagnostics";
query << QueryString.cString();
Result res = query.store(); // Query::store() executes the query and returns the results
lprintf("Records Found: %d\n", res.size() );
std::string TableName = res.table();
lprintf("%s:\n", TableName);
for (unsigned int i = 0; i < res.names().size(); i++) { String FieldName = res.names(i).c_str(); String SQLType = res.types(i).sql_name(); int Length = res.types(i).length();
lprintf(" Field Name: %s\n", FieldName); lprintf(" SQL Type: %s\n", SQLType); lprintf(" Max Length: %d\n\n", Length); }
return 0;
This works for the most part. Except that I always get (Null) returned for the Table Name and 0 for the length of the field.
Here's the output: Records Found: 889 (null): Field Name: system SQL Type: VARCHAR NOT NULL Max Length: 0
Field Name: plane SQL Type: VARCHAR NOT NULL Max Length: 0
Field Name: date SQL Type: DATE NOT NULL Max Length: 0
Field Name: problem SQL Type: CHAR NOT NULL Max Length: 0
I haven't found anything in the documentation that really helps me here.
Any ideas?
Thanks!
David
|
|
 |