I rebooted MySQL and it now works fine ;) On Fri, Sep 17, 2010 at 9:26 AM, Victor Subervi <victorsube...@gmail.com>wrote:
> Here's some more data: > > print 'insert into Passengers values (Null, %s, %s, %s, %s, %s, %s, > %s, %s, "no", "n/a")' % (curr_flight, curr_customer, name, curr_sex, > curr_weight, price, curr_rt, curr_confirmation) > > cursor.execute('insert into Passengers values (Null, %s, %s, %s, > %s, %s, %s, %s, %s, "no", "n/a")', (curr_flight, curr_customer, name, > curr_sex, curr_weight, price, curr_rt, curr_confirmation)) > database.commit() > cursor.execute('select last_insert_id() from Passengers') > last_insert_id = cursor.fetchone()[0] > print 'update Passengers set name=%s, weight=%s where id=%s' % > (name, curr_weight, last_insert_id) > cursor.execute('update Passengers set name=%s, weight=%s where > id=%s', (name, curr_weight, last_insert_id)) > database.commit() > > This prints out: > > insert into Passengers values (Null, 1, 1, Dr. Mengela, Male, 155, 100, > 100, 654, "no", "n/a") > update Passengers set name=Dr. Mengela, weight=155 where id=15 > > Here's what's in the database: > > mysql> select * from Passengers; > > +----+------------+-------------+------+------+--------+-------+------------+--------------+----------+---------------+ > | id | flights_id | customer_id | name | sex | weight | price | round_trip > | confirmation | late_fee | late_fee_paid | > > +----+------------+-------------+------+------+--------+-------+------------+--------------+----------+---------------+ > | 1 | 1 | 1 | '' | NULL | NULL | 0.00 | 0 > | 12345 | NULL | NULL | > | 15 | 1 | 1 | '' | Male | NULL | 0.00 | 100 > | 654 | no | n/a | > > +----+------------+-------------+------+------+--------+-------+------------+--------------+----------+---------------+ > 2 rows in set (0.00 sec) > > mysql> describe Passengers; > > +---------------+-------------------------------+------+-----+---------+----------------+ > | Field | Type | Null | Key | Default | > Extra | > > +---------------+-------------------------------+------+-----+---------+----------------+ > | id | int(11) | NO | PRI | NULL | > auto_increment | > | flights_id | int(11) | NO | MUL | NULL > | | > | customer_id | int(11) | NO | MUL | NULL > | | > | name | varchar(40) | YES | | NULL > | | > | sex | enum('Male','Female') | YES | | NULL > | | > | weight | int(11) | YES | | NULL > | | > | price | float(6,2) | NO | | NULL > | | > | round_trip | tinyint(1) | NO | | 1 > | | > | confirmation | varchar(20) | YES | | NULL > | | > | late_fee | enum('no','yes') | YES | | no > | | > | late_fee_paid | enum('n/a','paid','not paid') | YES | | n/a > | | > > +---------------+-------------------------------+------+-----+---------+----------------+ > 11 rows in set (0.00 sec) > > and when I run the update: > > mysql> select * from Passengers; > > +----+------------+-------------+-------------+------+--------+-------+------------+--------------+----------+---------------+ > | id | flights_id | customer_id | name | sex | weight | price | > round_trip | confirmation | late_fee | late_fee_paid | > > +----+------------+-------------+-------------+------+--------+-------+------------+--------------+----------+---------------+ > | 1 | 1 | 1 | '' | NULL | NULL | 0.00 > | 0 | 12345 | NULL | NULL | > | 15 | 1 | 1 | Dr. Mengela | Male | 155 | 0.00 > | 100 | 654 | no | n/a | > > +----+------------+-------------+-------------+------+--------+-------+------------+--------------+----------+---------------+ > 2 rows in set (0.00 sec) > > Please explain why it does that! > TIA, > beno > > > On Fri, Sep 17, 2010 at 8:51 AM, Victor Subervi > <victorsube...@gmail.com>wrote: > >> Hi; >> I have this code: >> >> cursor.execute('insert into Passengers values (Null, %s, %s, %s, >> %s, %s, %s, %s, %s, "no", "n/a")', (curr_flight, curr_customer, name, >> curr_sex, curr_weight, price, curr_rt, curr_confirmation)) >> >> Now, when I print it out, add quotes where necessary and enter it in at a >> mysql prompt, all goes well. But when I do it this way, it enters null >> values for curr_customer and curr_weight! Same darn thing printed out works >> at the prompt. What gives? >> TIA, >> beno >> > >
-- http://mail.python.org/mailman/listinfo/python-list