Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Не пойму DBGrid глючит или я... / 25 сообщений из 30, страница 1 из 2
22.05.2003, 10:36
    #32165799
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Подключаюсь к базе IB далее по шагам:
активируется транзакция
открывается таблица с тремя строчками
ручками добавляю строчку
делаю Post
ручками эту же строчку убираю
делаю Post
закрывается транзакция путем commit
переподключаюсь к таблице
там висит та строка, которую я удалил
end.

САБЖ....
...
Рейтинг: 0 / 0
22.05.2003, 10:38
    #32165804
Voha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Конечно ты :-)
ПРоверяй че написал в UpdeteSQL
...
Рейтинг: 0 / 0
22.05.2003, 10:47
    #32165824
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Да уж. Грид тут точно не причем.
...
Рейтинг: 0 / 0
22.05.2003, 10:48
    #32165827
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
update
RoadLanes
set
MBEGIN = :MBEGIN,
MEND = :MEND,
LANECOUNT = :LANECOUNT,
LANEWIDTH = :LANEWIDTH
where
ID = :OLD_ID;

А также:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
insert into RoadLanes
(IDROAD, MBEGIN, MEND, LANECOUNT, LANEWIDTH) 
values ( 1 , :MBEGIN, :MEND, :LANECOUNT, :LANEWIDTH)

и

delete from RoadLanes
where ID = :OLD_ID;

Где сглючил ?
...
Рейтинг: 0 / 0
22.05.2003, 10:55
    #32165840
Voha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Ты самого главного не написал DELETE...
во там гдето глю.к запал
...
Рейтинг: 0 / 0
22.05.2003, 10:57
    #32165845
Voha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
А поле ID Уникальное?
...
Рейтинг: 0 / 0
22.05.2003, 11:04
    #32165855
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Ты самого главного не написал DELETE...

не понял !!!

ID уникальное генерится триггером.
Вот еще что я заметил:
поле IDROAD заполняется, как видно из кода, в insert, А грид его рисовать в ячейке не хочет!!! Хотя RefreshSQL написан...
...
Рейтинг: 0 / 0
22.05.2003, 11:12
    #32165864
Voha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Чтобы увидеть IDROAD нужно "передернуть" (закрыть открыть) набор данных.
Либо поменяй в коде, после добавления записи присваивай значению поля набора данных нужное тебе значение Query1.FieldByName('IDROAD').AsInteger:=1; UpdateSQL поменяй соответственно.
напишим что у тя прописано в UpdateSQL.DeleteSQL на удаление записи.
...
Рейтинг: 0 / 0
22.05.2003, 11:22
    #32165873
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
напишим что у тя прописано в UpdateSQL.DeleteSQL на удаление записи
напишем или напиши ?

если напишем, то подскажи
если напиши, отсчитай 4 пост от начала...
...
Рейтинг: 0 / 0
22.05.2003, 11:32
    #32165893
Voha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Прошу прощения, у увидел.

А содержимое таблицы перед и после покаж
...
Рейтинг: 0 / 0
22.05.2003, 11:42
    #32165910
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
А содержимое таблицы перед и после покаж

В самой базе это значение появляется здесь:

Подключаюсь к базе IB далее по шагам:
активируется транзакция
открывается таблица с тремя строчками
ручками добавляю строчку
делаю Post
ручками эту же строчку убираю
делаю Post
закрывается транзакция путем commit
переподключаюсь к таблице
>> после этого "удаленная" строка появляется в базе :)

там висит та строка, которую я удалил
end.

(IDROAD, ID, SIDE, MBEGIN, MEND, LANECOUNT, LANEWIDTH)
(1, 1, 1, 0, 100, 2, 3);
(1, 2, 1, 150, 650, 2, 3);
(1, 3, 1, 800, 2000, 4, 2.8);

после "удаления" и переподключения:

(IDROAD, ID, SIDE, MBEGIN, MEND, LANECOUNT, LANEWIDTH)
(1, 1, 1, 0, 100, 2, 3);
(1, 2, 1, 150, 650, 2, 3);
(1, 3, 1, 800, 2000, 4, 2.8);
(1, 4, null, 999, null, null, null);
...
Рейтинг: 0 / 0
22.05.2003, 11:57
    #32165936
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
ID уникальное генерится триггером.
и вот это вот
А грид его рисовать в ячейке не хочет!!!

Получается, что у тебя для только что вставленной записи нет ID на клиенте. Так что ж ты хочешь удалить по этому ID, если он NULL? А в RefreshSQL ты небось тоже на ID завязался?
...
Рейтинг: 0 / 0
22.05.2003, 11:57
    #32165939
Voha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
А тригер Before или After?
Попробуй на onPost реагировать Tr.CommitRetaining.
Чесно говоря никогда не сталкивался с такой проблемой. Но дело это точно не в Гриде.
...
Рейтинг: 0 / 0
22.05.2003, 12:10
    #32165959
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
ID уникальное генерится триггером.
и вот это вот
А грид его рисовать в ячейке не хочет!!!

Цитирую полностью:
поле IDROAD заполняется, как видно из кода, в insert, А грид его рисовать в ячейке не хочет!!!
Я говорил в первом случае про ID во втором про IDROAD.

Получается, что у тебя для только что вставленной записи нет ID на клиенте. Так что ж ты хочешь удалить по этому ID, если он NULL? А в RefreshSQL ты небось тоже на ID завязался?

Да, действительно, триггер еще не сработал...
Но запись лежит еще на клиенте в некотором буфере, и при удалении ему бы просто свой буфер подправить, а не DeleteSQL запускать или, если так хочется, пробегать DeleteSQL по своему буферу...
Только это все теории - выход из проблемы-то я не нашел..
...
Рейтинг: 0 / 0
22.05.2003, 12:12
    #32165960
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Триггер Before, ID - NOT NULL PRIMARY INDEX.
...
Рейтинг: 0 / 0
22.05.2003, 12:32
    #32165997
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
А отладись не получается?
Поставить точку и на каждом шаге проверять, что в базе, что в датасете.
И еще. Для IB есть средства типа профайлера для MS SQL?
...
Рейтинг: 0 / 0
22.05.2003, 12:36
    #32166002
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
А отладись не получается?
Зверя "отладись" не видел...

Поставить точку и на каждом шаге проверять, что в базе, что в датасете.
И еще. Для IB есть средства типа профайлера для MS SQL?

А зачем проверять? Запись лежит в DataSet до Transaction.Commit
Вопрос в том, что после удаления эта запись в DataSet не удаляется... Хотя визуально исчезает.
...
Рейтинг: 0 / 0
22.05.2003, 13:02
    #32166053
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Запрос бы пказал !
и что он из себя представляет ...
...
Рейтинг: 0 / 0
22.05.2003, 13:04
    #32166059
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Запрос бы пказал !
и что он из себя представляет ...


InsertSQL, DeleteSQL, UpdateSQL - пост №4 сверху
Содержимое базы - пост №11 сверху...
...
Рейтинг: 0 / 0
22.05.2003, 13:05
    #32166060
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
тоесть хочется поподробнее увидеть как ты удаляешь строку ...
...
Рейтинг: 0 / 0
22.05.2003, 13:11
    #32166076
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
А ты после того как убил строчку попробуй
открыть , закрыть DataSet ...
посмотри что получится ...
...
Рейтинг: 0 / 0
22.05.2003, 13:15
    #32166080
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Пост №1 или №11
...
Рейтинг: 0 / 0
22.05.2003, 13:51
    #32166135
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
в IB есть что нибудь вроде profilera ?
так имхо проше смотреть что он там на сервак отпровляет ...
...
Рейтинг: 0 / 0
22.05.2003, 14:03
    #32166153
_designer_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Действия на клиенте: Insert, Delete, Commit
Доходит до базы: Insert
...
Рейтинг: 0 / 0
22.05.2003, 14:30
    #32166192
Alexandr Plus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не пойму DBGrid глючит или я...
Тоже сделал - id из триггера от последовательности
задается. И в DBGrid.
Куда-то куда удобней после Post RefreshRecord на вставленной записи и нормальный id в DBGrid будет тот, что в таблице БД.
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Не пойму DBGrid глючит или я... / 25 сообщений из 30, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]