A really small mistake – I wanted to run a MySQL update statement on laravel (no bindings, no parameters, no models) so I wrote this
DB::update(`UPDATE table SET something = 1 WHERE id = 1`);
When I ran this, I got this error
ValueError: PDO::prepare(): Argument #1 ($query) cannot be empty
Was a bit surprised to see this. Upon reading the documentation, you’re supposed to run the query this way, for queries not returning any values
DB::statement('UPDATE table SET something = 1 WHERE id = 1');
Also, I had used backticks “ for the original longer SQL statement so that seemed to have caused on issue.