How can I simulate very heavy database usage on Microsoft SQL Server 2005?
For test purposes I need to push the sql server to the max.
The server is on a virtual machine and I don't care about network load, just CRUD operations, mainly inserts because I want to demonstrate how the database grows very quickly.
There are 2 free utilities from Microsoft called SQLIOSim (was SQLIOSTress) to spank the IO system and OSTRESS to replay trace files.
If you aren't worried about the network side or the application part in your test then capture a repeatable of your applications pattern of whatever it is you are testing using SQL Profiler. You may need to add a table set for counters; or unique id's to reference depending on what it is you are doing.
Open up a few management studio windows and run them simultaneously; if necessary with a loop around each one. You can have many connections from a single machine.
If you do need the application side is it web or gui ?
You could write some units tests, say one test that does 1000000 inserts, one that performs some selects ( simple or complex - group by, joins, etc ), one that does some deletes and run these tests either in order, or in parallel, or even multiple instances of one of the tests or whatever.
Regarding the testing frameworks, you can start quickly with something like JUnit if you're doing java ( or the equivalent for other languages - PhpUnit, Nunit, PyUnit, etc. )
Take a look at Testing Framework and List of unit testing frameworks for detailed lists.