added search function to button

Top level of the threads given try/catch blocks to handle general
exceptions.
Added DBMgr level exception handling to catch missing form data. Checking
it at that level instead of at the form allows greater tesability.
added key pulling during query and add

required fro edit
fixed failed key search on null values
attached field edit to gui
Database demo project complete!

The delete function has been added to the button press.

Probably rely a little too much on try/catch for condition handling here,
and could instead use some better pre operation validation.

This C# demo also demostrates unit tests, and has been a mostly
test-driven development used to establish my own test driven development
process.

Code coverage is very near 100%. The unit tests require sql access, and so
are more like integration test.

I have found that GUI testing is simply better done with fingers and eyes:
it takes less time and reveals more issues than unit tests. However, if
working on a large, constantly changing project, I would generate
integration testing data to be sure that things don't break and results
remain consistent over the development cycle.