I'm trying to split the month and day from a date field to be held in 2 distinct attributes in a 'dynamic' attributes table, whereas the attributes are not FIELDS as such, but listed as records instead in order to be able to grow to an infinite number of attributes without changing the database's structure :

Table name : attributes
Only 3 fields: userid, attributeid, value

In our table below, the attribute 14 hold a date information (in text format though) and I would like to add records with an SQL INSERT query or change them using an UPDATE query to hold the month information (as attribute 33) and day information (as attribute 34) :

Table before required UPDATE statement :
userid ; attributeid ; value
1 ; 14 ; 2000-11-29
1 ; 33 ; NULL (in fact it doesn't exist at all)
1 ; 34 ; NULL (same as above)
2 ; 14 ; 2002-06-30
2 ; 33 ; NULL (same as above)
2 ; 34 ; NULL (same as above)
...

How do I update it to get this result :
userid ; attributeid ; value
1 ; 14 ; 2000-11-29
1 ; 33 ; 11 (or November, ...)
1 ; 34 ; 29
2 ; 14 ; 2002-06-30
2 ; 33 ; 06 (or 6, or June, ...)
2 ; 34 ; 30
...

I would like to be able to update it in 2 different ways:

1- Partial update (WHERE attribute '14' LIKE '%11-29%') to target just specific records, or
2- A full database update in a single swing if it's possible

I need to be able to INSERT records when they don't exist, and UPDATE when they do and I want to change them.

Thanks in advance, any help will be greatly appreciated.

Marco