Вызывает ошибку, т.к. в запросе нет такой таблицы "Table1". Более того, тут этот префикс просто не нужен, т.к. левая часть, имя поля, предполягает именно поле таблицы, из которой производится быборка.
А парамет PID заполняется перед ВЫПОЛНЕНИЕМ запроса через специальное св-во.
Код:
...
Query1.ParamByName('PID').AsInteger := Table1.FieldByName('ID').AsInteger;
Query1.Open;
...
PS. Ну вот ответь на вопрос - ЗАЧЕМ?
ЗАЧЕМ ты хочешь использовать БД ничего не понимая и не зная в этой области. Чем тебе обычный файл не угодил? Написать сериализацию/десериализацию для подобной структуры занимает макс. 1 час. Более того, ты ее все-равно будешь писать, только в извращенном виде заполнения БД данными, которые не очень-то подходят для хранения в БД (точнее их структура не ложится на БД, имеется в виду обычные, так сказать классические, реляционные БД).