Thanks Jim,
So if I have a table with 3 columns and the first column is the
auto_increment column.
I can do this and it will work?
// Used for inserts
sql_create_2(insert, 1,2, int, some_id_2, int, some_id_3)
// Used for retrievals
sql_create_3(query, 1,2, int, auto_id_1, int, some_id_2, int, some_id_3)
Thanks again,
Graham
On Aug 11, 2007, at 8:29 PM, Jim Wallace wrote:
> I use auto_increment often. The trick is to not include that
> column in
> the sql_create_* macro. This may mean you have > 1 macro for the same
> table, one for insert w/o that column, and one for retrieval with that
> column. I often have > 1 macro for the same table depending on how
> I'm
> using it.
>
> HTH
>
> -----Original Message-----
> From: Graham Reitz [mailto:grahamreitz@stripped]
> Sent: Saturday, August 11, 2007 2:27 AM
> To: plusplus@stripped
> Subject: Inserting with a column that uses auto_increment
>
> How do you prevent an insert as shown in the code below from putting
> "bogus" data in an auto_increment field?
>
> It seems like the billing_id field, in the code below, inserts a
> number
> based on the un-initialized value of client_id, instead of letting the
> database auto_increment the value. What's a good method to deal with
> this, that allows the database to auto_increment a database field?
>
> Thanks,
> Graham
>
> /************ CODE ************/
>
> #include <mysql++.h>
> #include <custom.h>
>
> using namespace mysqlpp;
>
> sql_create_2(clients, 1, 2,
> unsigned int, client_id, // auto_incremented field
> unsigned int, billing_id)
>
> void populate_client_info(clients& client_info)
> {
> client_info.billing_id = 1;
> }
>
> int main (int argc, char* const argv[])
> {
> Connection connection("db_name","ip_address","user",
> "password",3306, false);
>
> Query client_query = connection.query();
>
> clients a_client;
> populate_client_info(a_client);
>
> client_query.insert(a_client);
> client_query.execute();
>
> return 0;
> }
>
>
> --
> MySQL++ Mailing List
> For list archives: http://lists.mysql.com/plusplus
> To unsubscribe: http://lists.mysql.com/plusplus?
> unsub=grahamreitz@stripped
>