date not inserting - shows 0000-00-00 after insert
Put the date into quotation marks:

INSERT INTO DDD(datecolumn, open, high, low, close, volume) 
VALUES('2011-05-26', 12.09, 13.31, 12.05, 13.09, 1293441)


MySQL will have silently done some mathematics with 2011-05-26 and got its knickers in a twist. 

It does warn you though:

mysql&gt; insert into d VALUES(2011-05-26);
Query OK, 1 row affected, 1 warning (0.01 sec)

mysql&gt; show warnings;
+---------+------+-----------------------------------------------------+
| Level   | Code | Message                                             |
+---------+------+-----------------------------------------------------+
| Warning | 1264 | Out of range value for column 'datecolumn' at row 1 |
+---------+------+-----------------------------------------------------+
1 row in set (0.00 sec)

mysql&gt;


Without using quotes, MySQL is essentially inserting the integer 1980 ( which is 2011 minus 05 minus 26) as a date, as it treats it as mathematics:

mysql&gt; select 2011-05-26;
+------------+
| 2011-05-26 |
+------------+
|       1980 |
+------------+
1 row in set (0.00 sec)

mysql&gt;