Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.27;
Скачать: CL | DM;

Вниз

Ошибка   Найти похожие ветки 

 
RealShip   (2003-10-08 15:16) [0]

Есть форма, на ней DBGridEh, есть ADOQuery, dataset которого привязана к гриду.
Выполняется запрос: query:="SELECT A.*,B.* FROM Main as B INNER JOIN Employees as A ON A.Code=B.FIO WHERE B.Month=" + IntToStr(MonthOf(MonthC.Date)) + " AND B.Year=" + IntToStr(YearOf(MonthC.Date));

При попытке обновить таблицу через
With FmMain.DBGrid.DataSource.DataSet do
begin
Edit;
FieldByName("Hours").AsFloat:=StrToFloat(EHours.Text);
FieldByName("Percents").AsFloat:=StrToFloat(EPercents.Text);
FieldByName("KTU").AsFloat:=StrToFloat(EKtu.Text);
Post;
end;
вылезает ошибка "Insufficient Base Table Information for Updating".

Помогите разобраться! Спасибо!


 
sniknik ©   (2003-10-08 15:26) [1]

скорее всего ключа у таблице нет, сделай ключевое поле, попробуй с ним.


 
RealShip   (2003-10-08 15:42) [2]

спасибо за ответ!
Сам уже разобрался: эта ошибка выскакивает тока на компах где стоит Win98 (на ХР все ок).
Оказывается, что нужно явно указывать имена таблиц в запросе, а не использовать комбинацию Main as B,Employees as A...
То есть: query:="SELECT Employees.*,Main.* FROM Main INNER JOIN Employees ON Employees.Code=Main.FIO WHERE Main.Month=" + IntToStr(MonthOf(MonthC.Date)) + " AND Main.Year=" + IntToStr(YearOf(MonthC.Date));



Страницы: 1 вся ветка

Текущий архив: 2003.10.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
14-89512
x_ANDREW_x
2003-10-08 00:31
2003.10.27
Народу - тьма, а дела - ноль


6-89415
Finger
2003-09-02 12:11
2003.10.27
снифер


14-89525
zzet
2003-10-09 12:03
2003.10.27
iKobo


1-89327
satron
2003-10-16 16:01
2003.10.27
Как выделить строку в RichEdit зная только ее номер ???


7-89592
Sheng
2003-08-16 10:54
2003.10.27
Определить тип системы