If I remember correctly then the reason for seemingly inconsistent handling of `_` is this:

`SELECT'a'FROM` is valid SQL
`SELECT1FROM` is invalid SQL

But I'm not sure if this was really the case.