I must admit I'm not familiar with this SQL syntax.  I've usually used the INSERT INTO... VALUES way.  The SELECT ?,?,?,? should be field names though, right?  Not values?