GH #192: Unsigned integer values not handled properly in result sets

This commit is contained in:
Cameron Smith
2013-06-07 15:14:18 -04:00
parent 83ad8b36f5
commit 07f33b729a
8 changed files with 58 additions and 12 deletions

View File

@@ -497,6 +497,29 @@ void SQLExecutor::insertSingleBulk()
}
void SQLExecutor::unsignedInts()
{
std::string funct = "unsignedInts()";
unsigned int data = UINT32_MAX;
unsigned int ret = 0;
try { *_pSession << "INSERT INTO Strings VALUES (?)", use(data), now; }
catch(ConnectionException& ce){ std::cout << ce.displayText() << std::endl; fail (funct); }
catch(StatementException& se){ std::cout << se.displayText() << std::endl; fail (funct); }
int count = 0;
try { *_pSession << "SELECT COUNT(*) FROM Strings", into(count), now; }
catch(ConnectionException& ce){ std::cout << ce.displayText() << std::endl; fail (funct); }
catch(StatementException& se){ std::cout << se.displayText() << std::endl; fail (funct); }
assert (count == 1);
try { *_pSession << "SELECT str FROM Strings", into(ret), now; }
catch(ConnectionException& ce){ std::cout << ce.displayText() << std::endl; fail (funct); }
catch(StatementException& se){ std::cout << se.displayText() << std::endl; fail (funct); }
assert (ret == data);
}
void SQLExecutor::floats()
{
std::string funct = "floats()";