![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
связь между ячейками в простой БД
AndrewEA © (2006-12-29 18:07:00)я сделал в дестоп тулс 5 таблиц (paradox7), добавил их в приложение. но мне надо сделать так, чтобы при добавлении информации в ячейку ,например, ФИО таблицы 1, тоже самое появилось в таблице 2 под ФИО. как это можно осуществить?
п.с. опыта у меня очень мало
работаю с делфи 2005 (9).
Ученик чародея (2007-01-01 22:09:00) [1]
> palva © (01.01.07 20:31) [21]
>
> Ученик чародея © (31.12.06 22:46) [14]
> > а работа с Paradox в 2007 году - это секс в гамаке стоя.
>
> Не говорите так. Все захотят попробовать. А претензии будут
> к вам.
Что попробовать? Секс в гамаке стоя или Paradox?
palva (2007-01-01 20:31:00) [2]Ученик чародея © (31.12.06 22:46) [14]
> а работа с Paradox в 2007 году - это секс в гамаке стоя.
Не говорите так. Все захотят попробовать. А претензии будут к вам.
Anatoly Podgoretsky (2007-01-01 20:10:00) [3]> Ученик чародея (01.01.2007 20:01:19) [19]
Парадокс это реляционная база
Ученик чародея (2007-01-01 20:01:00) [4]
> Ученик чародея © (31.12.06 22:46) [14]
>
> Реляционные базы это больший геморрой по сравнению с Paradox.
>
Ну это читать так
Реляционные базы - это больший геморрой чем Paradox???
Пьян был немного.
Anatoly Podgoretsky (2007-01-01 17:01:00) [5]> sniknik (01.01.2007 16:48:17) [17]
> единственным значимым недостатком/проблемой в аксесс является ограничение на размер базы в 2гб. но и это документированное ограничение
Которое решается согласно рекомендации Микрософт - использовать бесплатный MS SQL - тогда размер базы ограничивается 2/4 гб, но количество баз может быть 12 * 12 экземпляров MS SQL
При том Микрософт настоятельно рекомендует такое использование даже для родного Акцесс и ФоксПро
sniknik (2007-01-01 16:48:00) [6]> но множество проблем типа неиспользование места удаленных записей (при удаленни записи помечаются
> как удаленные и приходится "сжимать" базу)
и все множество проблем судя по всему надуманные, к реальности отношения не имеющие, как и неиспользование места после удаленных записей. оно используется, и "сжимать" базу в общем нет необходимости, а уж делать это часто точно не нужно (в принципе вообще можно не сжимать... разве что если юзеру захочется посмотреть на реальный размер базы, без рабочего пространства/полупустых страниц. либо при переносе/пересылке куданибудь).
> тем более можно использовать компоненты доступа TIBTable
для аксесс тоже можно использовать TADOTable... в принципе, но это ОЧЕНЬ НЕ РЕКОМЕНДУЕТСЯ..., и дело даже не в том что компонент неправильно работает, а в том что навязывается неправильная логика работы с клиент сервером, причем в самом начале обучения когда формируются начальные навыки.
и кстати jet (провайдер для аксесс) это единственныйпровайдер который поддерживает работу в режиме файл сервера, т.е. это фактически единственный случай когда настройками можно и TADOTable заставить адекватно работать... только смысл? это же частный случай. лучше всетаки учится по правилам и после разобрать исключение, чем изучать исключение и после сказать что больше такого нигде нет...
IB/FB/TIBTable даже таким исключением не является, всегда работает по принципу клиент сервера. (т.е. я бы тоже ОЧЕНЬ НЕ РЕКОМЕНДОВАЛиспользовать)
p.s. единственным значимым недостатком/проблемой в аксесс является ограничение на размер базы в 2гб. но и это документированное ограничение т.что прямо проблемой назвать нельзя. (будет ли тупик на дороге куда вы заехали проблемой? если по всей дороге стояли знаки "там тупик, поворот на объезд в другую сторону". очевидно будет, но не для всех ...;)
MsGuns (2007-01-01 01:03:00) [7]>Ученик чародея ©
В честь Нового Года промолчу, но лучше б ты тоже промолчал ;)))
Ученик чародея (2006-12-31 22:53:00) [8]
> Megabyte © (31.12.06 20:56) [12]
>
> Используй Аксесс.
Можно, но множество проблем типа неиспользование места удаленных записей (при удаленни записи помечаются как удаленные и приходится "сжимать" базу) FBEmbeded намного удобнее, тем более можно использовать компоненты доступа TIBTable - для начинающего только изучать базы самое оно, так как SQL автор вроде бы еще не знает.
Ученик чародея (2006-12-31 22:46:00) [9]
> MsGuns © (31.12.06 13:38) [9]
> >Используй Firebird или FBEmbeded, заодно про нормальные
> формы и реляционную алгебру прочитаешь.
>
> Знаешь анекдот, как один дедуган советовал всем заполучать
> геморрой, ибо у него есть прекрасный рецепт изготовления
> свечей ?
Реляционные базы это больший геморрой по сравнению с Paradox. Если бы еще dbf с компонентами прямого доступа в обход BDE - это еще рабочий вариант, а работа с Paradox в 2007 году - это секс в гамаке стоя.
Megabyte (2006-12-31 20:56:00) [10]Используй Аксесс.
Megabyte (2006-12-31 20:56:00) [11]Используй Аксесс.
AndrewEA (2006-12-31 20:22:00) [12]база локальная. надо сделать к экзамену, блин
Anatoly Podgoretsky (2006-12-31 15:58:00) [13]AndrewEA (30.12.06 14:57) [6]
Каждая таблица должна иметь первичный ключ, часто его называют ИД. По данному ключу запись однозначно идентифицируется и связывается.
Если хочешь как то еще быть живым с Парадокс, то забудь про Table делай все через SQL и в таблицах только один индекс - первичный ключ. Возможно тогда тебе еще повезет, но сомнительно, если приложение сетевое.
Если есть возможность, то уйти на SQL сервер
MsGuns (2006-12-31 13:38:00) [14]>Ученик чародея © (29.12.06 19:32) [3]
>Можно через триггер, но это в указанном случае [0] изврат и путь с страшным глюкам.
В парадоксе есть триггеры ?
>Используй Firebird или FBEmbeded, заодно про нормальные формы и реляционную алгебру прочитаешь.
Знаешь анекдот, как один дедуган советовал всем заполучать геморрой, ибо у него есть прекрасный рецепт изготовления свечей ?
Плохиш (2006-12-30 16:25:00) [15]
> AndrewEA (30.12.06 15:03) [7]
Какое отношение это всё имеет к > AndrewEA (29.12.06 18:07) ?
> Ученик чародея © (30.12.06 00:54) [5]
Не говори, что я должен делать...
AndrewEA (2006-12-30 15:03:00) [16]вот что я понаписал.
Table2Fio.Value:=table3fio.Value; - такая байда не работает, пишет, что другая таблица не находится в режиме редактирования.
тут в принципе код только по выбору нужной таблицы.
procedure TForm1.FormCreate(Sender: TObject);
begin
table1.Active:=true;
table2.Active:=true;
table3.Active:=true;
table4.Active:=true;
table5.Active:=true;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
table1.Active:=false;
table2.Active:=false;
table3.Active:=false;
table4.Active:=false;
table5.Active:=false;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if ComboBox1.Text='1' then begin
DBGrid1.DataSource:=DataSource1; label1.Caption:='Каталог автомобилей салона';
dbnavigator1.DataSource:=DataSource1; end;
if ComboBox1.Text='2' then begin
DBGrid1.DataSource:=DataSource2; label1.Caption:='Клиенты салона';dbnavigator1.DataSource:=DataSource2;end;
if ComboBox1.Text='3' then begin
DBGrid1.DataSource:=DataSource3; label1.Caption:='Заказы клиентов';dbnavigator1.DataSource:=DataSource3;end;
if ComboBox1.Text='4' then begin
DBGrid1.DataSource:=DataSource4; label1.Caption:='Заказы заводам';dbnavigator1.DataSource:=DataSource4; end;
if ComboBox1.Text='5' then begin
DBGrid1.DataSource:=DataSource5; label1.Caption:='Заводы';dbnavigator1.DataSource:=DataSource5; end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
{Table2Fio.Value:=table3fio.Value; }
end;
end.
AndrewEA (2006-12-30 14:57:00) [17]что означает "сделай связь по ИД"?
Ученик чародея (2006-12-30 00:54:00) [18]
> Плохиш © (29.12.06 20:50) [4]
>
>
> > AndrewEA (29.12.06 18:07)
> > я сделал в дестоп тулс 5 таблиц (paradox7), добавил их
> в
> > приложение. но мне надо сделать так, чтобы при добавлении
> > информации в ячейку ,например, ФИО таблицы 1, тоже самое
> > появилось в таблице 2 под ФИО. как это можно осуществить?
>
>
> По тому, что здесь написано, нужно в OnAfterPost таблицы
> 1 сделать добавление в таблицу 2.
Не учи плохому, этому его еще Фленов с Архангельским научат.
Плохиш (2006-12-29 20:50:00) [19]
> AndrewEA (29.12.06 18:07)
> я сделал в дестоп тулс 5 таблиц (paradox7), добавил их в
> приложение. но мне надо сделать так, чтобы при добавлении
> информации в ячейку ,например, ФИО таблицы 1, тоже самое
> появилось в таблице 2 под ФИО. как это можно осуществить?
По тому, что здесь написано, нужно в OnAfterPost таблицы 1 сделать добавление в таблицу 2.
Ученик чародея (2006-12-29 19:32:00) [20]
> AndrewEA (29.12.06 18:07)
Можно через триггер, но это в указанном случае [0] изврат и путь с страшным глюкам.
Используй Firebird или FBEmbeded, заодно про нормальные формы и реляционную алгебру прочитаешь.
Например, это
http://www.intuit.ru/department/database/sqlmdintro/
http://www.intuit.ru/department/database/rdbintro/
http://www.intuit.ru/department/database/sql/