powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Две записи вместо одной
13 сообщений из 13, страница 1 из 1
Две записи вместо одной
    #32041695
Fedorenkoda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые мастера, я столкнулся с такой проблемой:
Я использовал компоненты(Delphi 5) Database,Session,DataSourse,Table для подключения таблицы MS SQL 7. Все данные этой таблицы я вывожу в DBGride.И все было бы нормально, но когда я вставляю запись, редактирую её и потом нажимаю на кнопку Post(DBNavigator) у меня появляется вторая запись идентичная вставленной(причем эта запись исчезает, когда я нажимаю на кнопку Refresh на Навигаторе). Как от неё избавиться программно, чтобы не пугать пользователя. Помогите, пожалуйста.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32041802
Фотография Tаrantino
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно с такой проблемой не сталкивался, но однозначно не хорошо использовать TTable
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32042220
~Bazul~
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно с такой проблемой не сталкивался, но однозначно не хорошо использовать TTable
С чего это вдруг? А для какой цели тогда нужен этот компонент? Очень он хорош для небольших справочников, классификаторов и т.д.
Проблема возникает в следующих случаях:
1. если в данной таблице нет первичного ключа
2. если первичным ключем является IDENTITY
3. если в TTable выставлены в IndexFieldName (или IndexName) поля, совокупность которых не является уникальным индексом. Пример: есть два поля - NOM int primary key,NAME varchar(50). Если указать в IndexFieldName поле NAME, то описанный клюк может иметь место, нужно ставить связку NAME;NOM.
Хотя пользуюсь теперь Delphi6+SQL2000+ADO и этих глюков нет.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32042255
Фотография Tаrantino
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Этот компонет создан для работы с локальными база а не для работы с SQL сервером.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32042293
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Согласен с Tаrantino. Тут дело даже не в глюках с "двойным" отображением. Когда в MS SQL напрямую редактируется таблица, на нее накладываются самые жесткие блокировки, т.е. другой клиент не может даже читать эту таблицу.
Реальный случай. Переписывали мы одну прогу на работающей базе и для скорости сделали справочник по TABLE. Мой коллега, начинающий программист, начал редактировать поле, но его срочно вызвали в цех, он закрыл кабинет и ушел. Потом пошел на обед, потом в другое место. А я тоже ползал по разным местам. В результате склад стоял три часа.
Больше я за скоростью и простотой разработки таким образом не гонюсь.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32042442
~Bazul~
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда в MS SQL напрямую редактируется таблица, на нее накладываются самые жесткие блокировки
Если кто работал в SQL6.5, то сие высказывание есть чистая правда. Там все друг друга вешали беспрестанно. В семерке стало полегче, а в 2000 бывает такое раз в пятилетку. Механизм блокировок значительно продуманее стал. "Смертельные объятия" между процессами почти не возникают.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32042690
ivanovach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приятно знать , что SQL6.5-BDE не один долбился.
Transact SQL - это супер.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32043102
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To ~Bazul~

Какая разница, все равно ходить на SQL Server через BDE да еще и через TTable - это садомазохизм.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32043150
~Bazul~
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Tygra
продолжая твою логическую цепочку можно сказать, что и работа с базами в Delphi 1,2,3,4,5 - садомазохизм вдвойне. Реально работающие компоненты ADO появились только в шестерке.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32043311
Фотография Tаrantino
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати я с 1996 по 2002 работал в связке DELPHI/BDE/SQL65 и на самом деле проблем не испытывал!

з.ы. Временно DELPHI/BDE/ORACLE а в планах DELPHI/ODAC/ORACLE
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32043434
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
До сих пор на 5 работаю с MS SQL через ADO, правда компоненты немного вручную написаны поверх ADO, для сервиса более лучшего.

С Oracle давно через DAO работал еще.

А через BDE помнится только на Interbase ходил, и то потому, что неохота было чего-то другое делать из-за пустяков.

Ну а сейчас то только ADO. Или dbExpress на крайняк.
В Delphi 7 теперь через него можно к SQL 2000 ходить.
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32043436
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь, к Oracle через DOA (вроде бы так)
...
Рейтинг: 0 / 0
Две записи вместо одной
    #32043488
Finty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Delphi 7? Ну вот блин, отстал от жизни. Народ уже на седьмой версии пашет, а я ни сном ни духом. Обыдноо...
:-((
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Две записи вместо одной
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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