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

Вниз

Как программно добавить данные в DBGrid?   Найти похожие ветки 

 
Tempo   (2004-07-08 14:35) [0]

Как программно добавить данные в нужную ячейку DBgrid? Точно знаю, что это возможно, но никак не получается.


 
Соловьев ©   (2004-07-08 14:42) [1]

как делаешь?


 
Johnmen ©   (2004-07-08 14:43) [2]

>Точно знаю, что это возможно

Твоё знание ошибочно...:)


 
Tempo   (2004-07-08 14:50) [3]

Johnmen
Я думаю, что можно.


 
Johnmen ©   (2004-07-08 14:56) [4]

>Tempo   (08.07.04 14:50) [3]

Так, мягче, уже лучше :) Но всё равно заблуждаешься...


 
Romkin ©   (2004-07-08 14:59) [5]

Единственная обязанность DBGrid - показывать содержимое датасета. Все остальное - в датасете. Его и крути


 
Tempo   (2004-07-08 15:08) [6]

Romkin
Использую ClientDataSet и DataSource. Работаю с XML файлами, возможность использовать SQL запросы отсутствует =(


 
Vlad ©   (2004-07-08 15:13) [7]


> Tempo   (08.07.04 15:08) [6]

SQL тут не причем. Сам сказал что у тебя есть DataSource.
Вот и подключи грид к нему.
А данные программно добавляй в ClientDataSet, а грид тебе их покажет.


 
Курдль ©   (2004-07-08 15:16) [8]


> Johnmen ©   (08.07.04 14:43) [2]
> Твоё знание ошибочно...:)

Легко! OnDrawColumnCell -> OutText("данные")


 
Johnmen ©   (2004-07-08 15:18) [9]

>Курдль ©   (08.07.04 15:16) [8]

Что легко-то ?
Просто вывел на экран в заданной области строку.


 
Tempo   (2004-07-08 15:20) [10]


> Vlad ©

Что-то не очень понял. DBGrid у меня и так идет через DataSource и показывает все записи БД (точнее нужные мне, настроил в ClientDataSet). Можно примерчик как добавить программно записи в БД через ClientDataSet?


 
Vlad ©   (2004-07-08 15:20) [11]


> Курдль ©   (08.07.04 15:16) [8]
>
> Легко! OnDrawColumnCell -> OutText("данные")

Это из желания помочь автору или поспорить с Johnmen ©   ?
Если первое - то это медвежья услуга.


 
Vlad ©   (2004-07-08 15:22) [12]


> Tempo   (08.07.04 15:20) [10]

ClientDataSet.FieldByName("MyField").AsString:="qqq";
ClientDataSet.Post.
Так мы добавили записи в ClientDataSet, но пока еще не в базу.
Подробнее - читайте справку.


 
Курдль ©   (2004-07-08 15:23) [13]


> Johnmen ©   (08.07.04 15:18) [9]
> Просто вывел на экран в заданной области строку.

Это из области фундаментальной теории! Но на экране ведт появится слово "данные" в ячейке!

Терь по существу
> Можно примерчик как добавить программно записи в БД через
> ClientDataSet?

ClientDataSet.Append;
ClientDataSet.FieldByName("FIELD_NAME").AsInteger := 1;
ClientDataSet.Post;

Или я чего-то недопонял?


 
Курдль ©   (2004-07-08 15:25) [14]


> Vlad ©   (08.07.04 15:20) [11]
> Это из желания помочь автору или поспорить с Johnmen ©  
>  ?
> Если первое - то это медвежья услуга.

Если честно, мне не очень хочется помогать авторам, которым перед программированием лень почитать даже основы того самого программирования.
Куда приятнее поспорить с теми, кто "что-то почитал" :)


 
Vlad ©   (2004-07-08 15:26) [15]


> Курдль ©   (08.07.04 15:23) [13]
>
> > Johnmen ©   (08.07.04 15:18) [9]
> > Просто вывел на экран в заданной области строку.
>
> Это из области фундаментальной теории! Но на экране ведт
> появится слово "данные" в ячейке!

в гриде от этого данных не добавится!


 
Соловьев ©   (2004-07-08 15:27) [16]

Все, пошла жара...:)
Как посмотерть, это одна из самых больных тем на форуме:)


 
Tempo   (2004-07-08 15:28) [17]


> Курдль ©  

По внешнему виду работает, но на самом деле... =)
Видимо я сам некорректно задал вопрос, мне нужно данные и отобразить пользователю и занести в БД.


 
Johnmen ©   (2004-07-08 15:28) [18]

>Курдль ©   (08.07.04 15:23) [13]
>Но на экране ведт появится слово "данные" в ячейке!

:)))
А ты в опциях убери отрисовку гор.и верт.линий - где теперь ячейки ? Боже ! Они исчезли ! Вместе с данными !
Вобщем хватит подначивать :))


 
Vlad ©   (2004-07-08 15:30) [19]


> Tempo   (08.07.04 15:28) [17]

А вот как занести физически в БД  - это уже второй вопрос.
см. метод ApplyUpdates


 
Tempo   (2004-07-08 15:30) [20]


> Если честно, мне не очень хочется помогать авторам, которым
> перед программированием лень почитать даже основы того самого
> программирования.

Зря делаешь поспешные выводы! Лучше тогда вообще молчи.

> Vlad ©   (08.07.04 15:22) [12]
>
> > Tempo   (08.07.04 15:20) [10]
>
> ClientDataSet.FieldByName("MyField").AsString:="qqq";
> ClientDataSet.Post.
> Так мы добавили записи в ClientDataSet, но пока еще не в
> базу.
> Подробнее - читайте справку.

Все, спасибо. Как сохранять я знаю, я нигде не мог узнать как добавить программно, а не ручками.


 
Курдль ©   (2004-07-08 15:40) [21]


> Tempo   (08.07.04 15:30) [20]
> Зря делаешь поспешные выводы! Лучше тогда вообще молчи.
> Как сохранять я знаю, я нигде не мог узнать
> как добавить программно, а не ручками.

Не буду я молчать! Если человек садится писать прогу для работы с наборами данных (Вам значение слова DataSet, надеюсь, понятно?), а знания типа "как добавить данные в этот самый набор" пытается почерпнуть из форума - это уже не нормально!


 
Johnmen ©   (2004-07-08 15:52) [22]

>Курдль ©   (08.07.04 15:40) [21]

Для некоторых - вполне нормально. А вот печалит, что этих некоторых становится всё больше с каждым днём...:(


 
Tempo   (2004-07-08 15:57) [23]

Скажи это авторам книг, которые посвящены работе с локальными БД и в которых не рассматривается компонент ClientDataSet вообще. Пускай книга по delphi 5 (я только начал с выходом этой версии изучать delphi после паскаля и ассемблера), но в ней этот компонент точно присутствовал.
Длительные поиски по яндексу ни к чему не привели, в каких формах я только не задвал запрос... Сам я ничего из логически объяснимых и знакомых мне слов в компаненте не нашел, поэтому осталось тлько обратиться в форум. Извини, если тебя побеспокоил.


 
Tempo   (2004-07-08 15:57) [24]

Скажи это авторам книг, которые посвящены работе с локальными БД и в которых не рассматривается компонент ClientDataSet вообще. Пускай книга по delphi 5 (я только начал с выходом этой версии изучать delphi после паскаля и ассемблера), но в ней этот компонент точно присутствовал.
Длительные поиски по яндексу ни к чему не привели, в каких формах я только не задвал запрос... Сам я ничего из логически объяснимых и знакомых мне слов в компаненте не нашел, поэтому осталось тлько обратиться в форум. Извини, если тебя побеспокоил.
П.С.: я точно программно добавлял данные в ячейки в обычно grid, вот и попутал.


 
Курдль ©   (2004-07-08 16:12) [25]


> Tempo   (08.07.04 15:57) [24]

Ок! Хорошо, что читаешь книги. Это меняет дело.
Тогда вот совет - заглядывай компонентам туда, откуда ноги растут. Если в хэлпе кликнешь на строчке hierarchy - появится цепочка наследования. Да и в списках методов или свойств тоже всегда указано, - какие из них являются родными, а какие - унаследованы от родителей. (Я привел эту пламенную речь о TDataSet-ах, если кто не понял).


 
Zhekson   (2004-07-08 16:22) [26]

Johnmen, Курдль,
Vlad

Капец. А ведь вы тоже когда-то были как Tempo, потом как Vlad. Вопрос в том, были ли вы тогда такими наглыми, к Vladu не относится?


 
Johnmen ©   (2004-07-08 16:27) [27]

>Zhekson   (08.07.04 16:22) [26]

Да, были. За одним существенным исключением. Сам догадаешься, за каким ?


 
Romkin ©   (2004-07-08 16:30) [28]

Zhekson  (08.07.04 16:22) [26] Не были. Мне, например, хватило часа разобраться с этим вопросом в свое время. А через пару дней я уверенно работал с БД. Без всяких книг. HElp + Demos


 
Zhekson   (2004-07-08 16:39) [29]

to Romkin

О, и Вы туда же...

Цытата:
"Johnmen ©   (08.07.04 16:27) [27]
>Zhekson   (08.07.04 16:22) [26]

Да, были. За одним существенным исключением. Сам догадаешься, за каким ?"


 
Zhekson   (2004-07-08 16:48) [30]

To Romkin:

Вы просто, видать, сразу умным родились, раз небыли. И потом не каждая книга обучает пользованию HELP+Demos. + Лень +
Цитата:
"Johnmen ©   (08.07.04 16:27) [27]

Да, были. За одним существенным исключением. Сам догадаешься, за каким ?"

Вот и пердставь сколько там процентов, на положительный результат этой затеи.


 
Tempo   (2004-07-08 17:36) [31]

Честно, не понимаю зачем орать и тут же говорить дежурную фразу "ламер". Я не программист, я ЭВМЩик, профессиональный, работаю системным администратором, писал много программ облегчающих и себе и многим другим жизнь, распростронял их через интернет свободно, впервые столкнулся с потребностью использования локальной БД, спросил вопрос, ну не хочешь - не отвечай. Я же своих пользователей не посылаю "нажми F1" или "сядь за соседний компьютер и поищи в интернете".
Злые вы. Бывает же, что ну все, не знаешь как это сделать, где еще спросить? Выложить 30% от зарплаты на новую книжку, в которой будет инфа о ClientDataSet типа "Это для работы с БД, можно с локаkьными, можно с сетевыми, наверное, в общем эта книга не об этом, перейдем к созданию БД в Desktop Database... два раза мышкой, сюда, сюда, какой формат Вам нужен сами догодаетесь, как тепреь прикрутить эту базу к своему приложению - тоже, еще советую посмотреть том 54, который можно заказать в интернет-магазине www.b***m.ru, в нем сказано для чего БД вообще нужны."


 
Zhekson   (2004-07-08 17:59) [32]

Молодчик, разжалобил., что дальше?

я почему спрашиваю??? просто я ответ незнаю и так же, как и Вы пытаюсь узнать у наших уважаемых Мастеров. Хотя нет, есть ещё одно "Но" - я вопрос не понял.


 
Rem   (2004-07-08 18:02) [33]

Интересно, а если бы вы прочитали информацию о "Форуме зоологов", вы поперлись бы туда задавать вопрос "почему кузнечик прыгает"? Или для начала открыли бы детскую энциклопедию?

Почему вы превращаете форум программистов в банальную онлайн консультацию?

Форум - это место, где решаются задачи немного глобальнее банального "добавить запись в DataSet".

Если не верите - откройте словарь русского языка, статья "Форум", и убедитесь сами!

А я изучал Turbo Pascal 5.5 по help"у на английском языке, хотя английский тогда знал на уровне школьного курса. И мне не в облом было над одним предложением из справки биться 20 минут, чтобы перевести слова и понять смысл предложения, построенного по правилам английской грамматики. И никаких форумов! У меня даже книг по программированию не было! Я, компилятор, скудная справка на английском и 2-килограммовый словарь Мюллера. И ничего. И допер. И разобрался. И английский выучил. И пишу сейчас проекты масштаба среднего предприятия. И при этом никогда не считал себя крутым программером. Потому что все знать невозможно. Для того существует F1. Справка для того и пишется, чтобы ее читали. Или разработчикам нефиг делать?


 
Zhekson   (2004-07-08 18:15) [34]

to Rem

А если придёт мастер мастеров и назовёт Ваш вопрос таким же ламерским каким Вы считаете вопрос Tempo???
Просто не знаешь вопрос, не хочешь отвечать - не отвечай, никто же не заставляет.

Хочешь помочь или такой же ламер + хочешь помочь тогда делай это.

А форуму это только наруку, т.к. тут могут пообщаться люди разного уровня мастерства.


 
Ozone ©   (2004-07-09 05:50) [35]

Vlad ©   (08.07.04 15:30) [19]

>> А вот как занести физически в БД  - это уже второй вопрос.
>> см. метод ApplyUpdates

ApplyUpdates используют только при сохранении кешированных изменений... а о них тут ни слова.


 
Vlad ©   (2004-07-09 07:59) [36]


> [35] Ozone ©   (09.07.04 05:50)


> ApplyUpdates используют только при сохранении кешированных
> изменений... а о них тут ни слова.

Зато сказано о TClientDataSet, который сам по себе - один баальшой кэш ;-)


 
Ozone ©   (2004-07-09 08:39) [37]

Не знал. Тогда прошу прощения.



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

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

Наверх




Память: 0.54 MB
Время: 0.035 c
1-1089986876
Dima_Delphi
2004-07-16 18:07
2004.08.01
Как создать круглую кнопку в делфи???


14-1089225291
VID
2004-07-07 22:34
2004.08.01
Простой вопрос о настройке сети между двумя компами


4-1087805509
besen-ok
2004-06-21 12:11
2004.08.01
Можно ли на терминальном сервере в определенной сесиси запустить


4-1087460314
Denizzz
2004-06-17 12:18
2004.08.01
Проблемы клика по моей иконке в трэе


4-1087048261
Игорь
2004-06-12 17:51
2004.08.01
Перехват открытия файлов





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский