PHP/MySQL Duplicate entry '0' for key 1

hey people, I’m at wits end with this sql stuff. I’m trying to write a script for editing a products information. Though I keep getting errors with the sql, on odd moments it actually screws up the table itself and then I have to do, table repair table_name;. The standard error I get is

“Duplicate entry ‘0’ for key 1”

heres the sql:

UPDATE tcom_products SET
product_id='NULL', product_pic='NULL', product_title='Toy5',
product_category='1', product_brand='2', product_price='4.00',
product_was='0.00', product_stock='10', product_code='', product_age='2',
product_desc='Blah sdsdasdsa', product_active='0'
WHERE product_id='18' AND product_code='10'

table structure:

Field Type Attributes Null Default Extra
product_id tinyint(4) No auto_increment
product_title varchar(250) Yes NULL
product_category tinyint(3) Yes NULL
product_shipping tinyint(2) Yes NULL
product_brand tinyint(3) Yes NULL
product_price varchar(5) Yes NULL
product_was varchar(5) Yes NULL
product_stock tinyint(4) Yes NULL
product_code varchar(8) Yes NULL
product_age tinyint(2) Yes NULL
product_pic varchar(250) Yes NULL
product_desc text Yes NULL
product_active tinyint(1) Yes NULL

Indexes:
Keyname Type Cardinality Field
PRIMARY PRIMARY 8 product_id
product_code UNIQUE 8 product_code
product_title FULLTEXT 8 product_title
product_desc FULLTEXT 8 product_desc 1

As its only the sql thats going nuts I’ll leave out the php file, but will post if needed.