Need to change a column name or add more columns? dbmate new change-table-user.sql. After that the code will have compile errors because of new columns, changed column names... that is the good part of having type-safe code.
Yes, it does check for SQL syntax errors. See an example in the video. It also has other features: nested results (-- @nested) and initial support for dynamic queries (-- @dynamicQueries).