Много информации онлайн о внедрении SQL. Ограничение привилегий пользователя, с которым вы подключаетесь к SQL, - одно из очень важных препятствий.
http://en.wikipedia.org/wiki/SQL_injection
Вот простой, пугающий пример, с которым я столкнулся пару лет назад. Веб-сайт генерирует SQL-выражения на лету, используя URL-адреса, и запускает их. Мне удалось угадать, что URL-адреса, такие как
www.blah.com /.../ load.aspx? Itemid = 1
произвел SQL, как это
SELECT * ИЗ элементов, где id = 1
поэтому я отправил этот URL:
www.blah.com /.../ load.aspx? Itemid = 1; удалить элементы таблицы
бах.
По крайней мере, если бы соединение с БД не было dbo, это не состоялось бы.