@vincej Here You Go
$result = DB::unprepared('
LOCK TABLE nested_categories WRITE;
SELECT @myRight := rgt FROM nested_categories
WHERE name = \'MATERIALS\';
UPDATE nested_categories SET rgt = rgt + 2 WHERE rgt > @myRight;
UPDATE nested_categories SET lft = lft + 2 WHERE lft > @myRight;
INSERT INTO nested_categories(name, lft, rgt) VALUES("WINDOWS",@myRight+1,@myRight+2 );
UNLOCK TABLES');
Note $result returns 0. Also I had change table def allow nulls for updated_at and created_at. See you are gonna need to get error info from this. I highly recommend you get PHPStorms debug going on Linux. Its makes it easier to explore.
I found unprepared here...
http://stackoverflow.com/questions/14687993/laravel-4-how-to-run-a-raw-sql
DB:statement and such, use prepared PDO statements and in this case we have statements with data already supplied. In your case the select variables. You can inject PHP values with regular variables. You made to escape single quotes as I did.
What version are you running? I did this under 5.3 latest.