Pantek Library
Hosting Provided By
CybrHost
High Speed Hosting

Re: query does not affect database

From: Warren Young <mysqlpp(at)etr-usa.com>
Date: Wed Sep 26 2007 - 13:22:53 EDT


Jack Monflower wrote:
>
> Connection goes fine (I check if connect returns false, and it does not).

You can't mix the return-code and exception error handling mechanisms in this way.

I don't mean to suggest that the connection could be failing. If it were, your program would be crashing because you aren't (apparently) catching the exception you'd get if that were happening. It is something you need to address to make this code production-ready, however.

If you must mix the two error handling mechanisms, you need to use a NoExceptions object to temporarily turn off exceptions for a given block of code.

> if (!conn.connect("mydb", "localhost", "root", ""))

[snip]

> Transaction trans(Configuration::conn());

You're referring to the connection in two different ways here. Are you certain that these are the same connection?

Do you need help?X

And I hope Configuration::conn() returns by reference? If not, that's probably the problem.

> Everything goes well, compilation as well execution, and the program exits
> with the message "user added". Still, when I check if anything was added to
> the database, I see no new rows.

Not all of the storage engines MySQL offers support transactions. Are you using one of them?

Transactions are also relatively recent additions to MySQL. Are you using a version of MySQL that even supports transaction-aware storage engines?

Does it work if you type the SQL for this insertion sequence into the mysql command line client?

-- 
MySQL++ Mailing List
For list archives: 
http://lists.mysql.com/plusplus
To unsubscribe:    
http://lists.mysql.com/plusplus?unsub=lists@pantek.com
Received on Wed Sep 26 13:28:36 2007

This archive was generated by hypermail 2.1.8 : Sun Oct 07 2007 - 10:03:22 EDT


Contact Us  Legal Notices  Order Services Online 
Pantek Home  Privacy Policy  IT news  Site Map  Pantek Library