Topic: дубликаты
Нашёл на FAQ данную тему
http://myvisualdatabase.com/forum/viewtopic.php?id=1062
И интересно как её применить в моём случае?
У меня есть 2 разных необходимости в проверке дубликатов.
Первая это когда проверяется дубликат по 2 параметрам, таким как id_человека и id_должности,
которые заносятся в таблицу test через скрипт.
Выглядит это таким способом, в программе которую я на всякий случай приложу для примера, я нажимаю по кнопке "Добавить должность"
затем, из появившейся таблицы "position"
с помощью скрипта
procedure должности_и_навыки_TableGrid1_OnClick (Sender: TObject);
begin
idPosition := SQLExecute('SELECT id FROM position WHERE id='+ должности_и_навыки.TableGrid1.sqlValue );
end;
Назначается переменная, и тут же открывается следующая форма
где под цифрой 1, мы выбираем человека из таблицы, и тут же с помощью скрипта назначается вторая переменная
procedure должности_и_инавыки_добавить_TableGrid2_OnClick (Sender: TObject);
begin
idPeople2 := SQLExecute('SELECT id FROM people WHERE id='+ должности_и_инавыки_добавить.TableGrid2.sqlValue );
end;
после чего нажимаю на кнопку "назначить" под цифрой "2", и с помощью скрипта на этой кнопке
procedure должности_и_инавыки_добавить_Button4_OnClick (Sender: TObject; var Cancel: boolean);
begin
if (idPosition <> '') AND (idPeople2 <> '') then
begin
SQLExecute('INSERT INTO test(id_people,id_position) VALUES ("'+idPeople2+'","'+idPosition+'");');
end;
должности_и_инавыки_добавить.TableGrid1.dbUpdate;
end;
в таблицу test (под цифрой 3) вносится 2 переменные, смысл которых в том, что они не должны дублироваться. Я понимаю что сам способ введения информации не самый лёгкий, но всё таки хотелось бы именно с таким решением запретить дубликат. Есть ли такая возможность что бы нельзя было создать запись с данным человеком, если она уже была создана? То есть тот же "Максим Котов" не смог бы назначаться на данную вакансию больше чем 1 раз.