7 ms·
Isn’t sql weakly typed? Or does this depend on the engine?
by bazoom42 29d ago
Isn’t sql weakly typed? Or does this depend on the engine?
- groundzeros2015 29d agoSQLite is the only one I know of that doesn’t enforce types by default, but I don’t know what the SQL spec requires.
- pjmlp 29d agoNo it is strongly typed, there is no accident that all PL extensions to the base query language have such a Ada/Pascal similarity. Additional DML has plenty of options to enforce rules that keep data consistency. While they make the life harder to delete/update/insert items in specific sequences, they can save the day on bad queries.
- bazoom42 29d agoWhat happens if a query compares a string to a number?
- mike_hearn 29d agoYou get a type error from the database.
- bazoom42 28d agoAs far as I can tell, some engines will implicitly coerce types so “7” = 7
- moljac024 28d agoBut when do you get that type error? This is the important bit. You get it after the app is deployed, the query is ran and a result is expected. When do I get a type error from my language if it's statically typed? That's right, before I even deploy.