No output at all still leaks everything, one yes/no question at a time, through boolean or timing oracles.
Blind SQL injection
No results, no errors: you still have a yes/no oracle.
- Boolean-blind.
' AND SUBSTRING((SELECT password FROM users LIMIT 1),1,1)='achanges the page when the guess is right. Binary-search each character. - Time-blind. When even the page does not change, make the server wait:
' AND IF(SUBSTRING(...)='a', SLEEP(3), 0)--. A slow response means yes.