Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];

Вниз

Справочники   Найти похожие ветки 

 
Марат   (2004-02-04 09:07) [0]

Здравствуйте мастера. Есть вопрос. Необходимо, чтобы в проекте была возможность изменять справочник с SQL-сервера. В MSAccess есть присоединенные таблицы,а как это делается в Delphi?


 
ЮЮ   (2004-02-04 09:10) [1]

И что эти справочники не такие же таблицы в БД, с которыми работаешь в проекте?


 
Марат   (2004-02-04 09:18) [2]

Такие же.Но если я пытаюсь изменить что-нибудь в DBGrid, то выдается ошибка.


 
Ega23   (2004-02-04 09:24) [3]

Не знаю, наверное со мной будут спорить, но править данные непосредствено в гриде, ИМХО, дурной тон.


 
asp   (2004-02-04 09:26) [4]

Марат (04.02.04 09:18) [2]> Ошибка с сообщением ошибка? :)
Текст?


 
KSergey   (2004-02-04 09:28) [5]

1.Текст ошибки?
2.Компоненты доступа?
3.Первичный ключ в таблицах есть?


 
Марат   (2004-02-04 09:29) [6]

Ну, вообще-то я у Вас и хотел спросить,где править можно и лучше?


 
Ega23   (2004-02-04 09:33) [7]

Создай для каждой из справочных таблиц отдельную форму и показывай её модально. Чем такой вариант хорош - дураказащиту можно прописать без проблем всяких.


 
Марат   (2004-02-04 09:35) [8]

Текст ошибки не помню,т.к. после этого перепробовал многие варианты. Один из них:Впихиваю все в StringGrid и в массив, а потом проверяю изменились ли данные (но это я думаю через Африку).Доступ проставлен на все (Select,Insert и т.д.).Первичный ключ по ID-шнику.


 
asp   (2004-02-04 09:38) [9]

Марат (04.02.04 09:35) [8]> Чем StringGrid в данном случае привлекательнее DBGrid?
Компоненты доступа?


 
Марат   (2004-02-04 11:04) [10]

Попробую переформулировать вопрос.Необходимо создать на форме такой компонент, при редактировании которого автоматически менялась бы таблица на сервере.


 
asp   (2004-02-04 11:06) [11]

Например,: TQuery, TDataSet, TUpdateSQL, TDBGrid
Плюс обработка событий.


 
Ega23   (2004-02-04 11:07) [12]

А не стоит такого делать. По целому ряду причин:
1. Вдруг кто-то на другом клиенте редактирует эту-же запись?
2. Вдруг требуется "откатить" изменения?
3. Допустим я поменял 3 поля из шести, а потом решил, что это я погорячился. А записи-то в таблице поменялись.
И ещё много можно привести.


 
Марат   (2004-02-04 12:20) [13]

Такого не будет. Только "узкий" круг пользователей смогут что-то изменять. Но у меня остался вопрос.Если пытаюсь сделать изменения в DBGrid (Editing=true), то максимум что получается- выделить ячейку.


 
Ega23   (2004-02-04 13:14) [14]

Что ты используешь в качестве TDataSource?


 
Марат   (2004-02-04 14:05) [15]

Ребята, получилось!!!Оказывается всего-то надо было сделать Query.ApplyUpdates.Но теперь возник другой вопрос. А как удалить целую строку из DBGrid?Не буду же я удалять по одному полю.А если в свойствах прописать Editing=true, то SelectRows автоматически=false.


 
ЮЮ   (2004-02-05 04:20) [16]

>А как удалить целую строку из DBGrid?
Попробуй, блин, удалить целую запись из Query, а то все строки поудаляешь, а записи останутся :-)


 
ЮЮ   (2004-02-05 05:40) [17]

Нажми Ctrl + Del, находясь на нужной строке Грида, и случится чудо !!!



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

Форум: "Базы";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
3-93775
kiril-
2004-02-04 10:31
2004.02.29
UPPER в Interbase


7-94217
Анонимщик
2003-12-01 13:31
2004.02.29
Ком-порт, CTS, 12 вольт


3-93793
Sergvc
2004-02-03 16:06
2004.02.29
список баз в SQL Server


6-94048
Jillyusus
2003-12-22 21:29
2004.02.29
Как передать сообщение?


14-94137
Nikolay M.
2004-02-06 09:58
2004.02.29
Банкетные залы в Москве - ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский