Я могу ошибаться, но выглядит для меня так:
tx.executeSql (sql, [], функция (trx, результат)
на самом деле должно читаться как:
tx.executeSql (sql, [], функция ( tx , результат)
В противном случае вы пытаетесь вызвать то, что вы не определили - trx vs tx.