Your table have 11 columns. But you insert only in 10.
Should be:
executeSQLInsert( "RaceStats", "'" .. tostring( serial ) .. "', '" .. getPlayerName( source ) .. "', '0', '0', '0', '0', '0', '0', '0', '0', '0'" )
It's not rationally use more queries for update that. You can make it in one query. It's more faster. Believe me.
Also it's bad idea for execute sql query when player join, you need make it when player logged in.
And i not recommend you use serial as root of user's data. You need use account as root of.