Hacker News new | ask | show | jobs
by jfyi 789 days ago
Let's take a look at how the big boys handle something similar...

SELECT * FROM logs WHERE KEY = 'blah' LIMIT 10;

/* SQL Error (1064): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'KEY = 'blah' LIMIT 10' at line 1 */

I think there is some expectation of technical literacy for the use of a database. This would include being able to familiarize yourself with naming conventions and keywords.

I have personally never seen a database that gives detailed error messages like was requested and I'd be excited to see an example.

1 comments

Yes, the error messages of modern SQL databases suck. On that note, SQL itself sucks (the two problems might be related). But that's no excuse to not do better. Besides, BeeBase seems more user-focused than MariaDB, presenting itself as a nice GUI tool. "Real developers" might not need good error messages, but they also don't need a GUI and would sooner use some unholy bash-sed-awk-Perl mixture.
Are you aware of non SQL databases that give detailed errors?
Fair point. Databases encoding queries in JSON get some error messages for free, at least when it comes to "syntax". But I think even others do well.

I just logged into Grafana and tried writing a simple query. Upon failing I got a reasonably detailed and specific error message: 'parse error: expected type range vector in call to function "rate", got instant vector'.

I also tried XQuery in Xidel and it gave me nicely descriptive responses to whichever mistakes I introduced.