Вопрос № 90107: Приветствую!
Ответьте пожалуйста на такие вопосы:
1. Я работаю с SQL-сервером (MS SQL 2000) и Delphi 7 (компонент DBGrid). Не получается с удалением записи. Как удалить выделенную запись из базы SQL? Как удалить несколько выделенных записей и...
Вопрос № 90.107
Приветствую!
Ответьте пожалуйста на такие вопосы:
1. Я работаю с SQL-сервером (MS SQL 2000) и Delphi 7 (компонент DBGrid). Не получается с удалением записи. Как удалить выделенную запись из базы SQL? Как удалить несколько выделенных записей из базы SQL? Как узнать текст в первой ячейке выделенной строки (независимо от столбца, на котором стоит курсор)?
Если я делаю так, то удаляются обсолютно все записи:
DM.ADOQuery1.SQL.Clear;
DM.ADOQuery1.SQL.Add('Delete from Personal');
DM.ADOQuery1.SQL.Add('where ТН = ТН');
DM.ADOQuery1.ExecSQL;
2. Есть две таблицы в SQL и два GRIDа на форме, как их можно связать между собой. Допустим, чтобы при выборе записи в первом GRIDe (соответственно таблица SQL - Table1), показывались записи во втором GRIDe (из таблицы SQL - Table2), относящиеся только к выбранной записи в первом. ID1 (в первом) = ID2 (во втором). Надеюсь задача понятна.
Заранее огромное спасибо за уделенное время.
Отправлен: 05.06.2007, 13:06
Вопрос задал: xXx (статус: 6-ой класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Netizen
Здравствуйте, xXx
В ответ на Второй вопрос, могу пояснить принцип Как сделать непосредственно на SQL и Delphi не знаю.
В теории это возможно так. Делаешь функцию (NameFunctionID)которая получает ID первой таблицы. Вторым этапом будет создание Запроса на выборку данных с ограничивающим условием на поле ID во второй таблицы. Значение на ограничение будет как раз результат функции.
Третим шагом: При выполнении запроса делаешь обновление второй таблицы.
Опять же реально на Delphi я этого не делал. На VBА и Access это сделать очень легко
Ответ отправил: Netizen (статус: Студент)
Ответ отправлен: 05.06.2007, 14:17 Оценка за ответ: 3 Комментарий оценки: Спасибо за пояснение...