Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.01.2016, 18:55
Alick Alick вне форума
Прохожий
 
Регистрация: 12.01.2016
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
Вопрос Клиент серверная бд

Помогите создать связь. Сделал одну часть серверную. Где сама таблица в которой можно редактировать БД.

Нужно создать клиентскую часть для подключения по сети и добавления записей в БД.

Мало еще смыслю, делаю в основном по шаблону
Спасибо
Ответить с цитированием
  #2  
Старый 12.01.2016, 19:09
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Смех

Delphi5: новые возможности в MIDAS технологии
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #3  
Старый 12.01.2016, 19:45
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Нам, MIDAS - это про многозвенку, вообще-то.
Алик, что ты сделал? Просто создал таблицу? Или все-таки программу, которая работает с таблицей, которая расположена на сервере?
Ну и неплохо было бы дать больше информации. Какая БД, какая версия Delphi и т.д.
Ответить с цитированием
  #4  
Старый 12.01.2016, 19:58
Alick Alick вне форума
Прохожий
 
Регистрация: 12.01.2016
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
Вопрос

Цитата:
Сообщение от lmikle
Нам, MIDAS - это про многозвенку, вообще-то.
Алик, что ты сделал? Просто создал таблицу? Или все-таки программу, которая работает с таблицей, которая расположена на сервере?
Ну и неплохо было бы дать больше информации. Какая БД, какая версия Delphi и т.д.


БД в аксесе. подцепил ее в Delphi 7. Делал Через dataSourse adoConnection AdoQuwery.
Возможности
Можно добавлять изменять удалять записи. Осталось сделать клиентскую часть через которую можно было бы добавлять записи.
Ответить с цитированием
  #5  
Старый 12.01.2016, 20:35
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Цитата:
Сообщение от lmikle
Нам, MIDAS - это про многозвенку, вообще-то.
В этой очень старой статье описан механизм создания велосипеда, который изобретает ТС
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #6  
Старый 12.01.2016, 22:03
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от NumLock
В этой очень старой статье описан механизм создания велосипеда, который изобретает ТС

Дык ТС даже не велосипед изобретает.
Тут вообще полное непонимание вопроса.

Цитата:
Сообщение от Alick
БД в аксесе. подцепил ее в Delphi 7. Делал Через dataSourse adoConnection AdoQuwery.
Возможности
Можно добавлять изменять удалять записи. Осталось сделать клиентскую часть через которую можно было бы добавлять записи.

Ну, для начала, Access - это не сервер, просто локальная СУБД. Хотя, что бы поиграться - достаточно. Тогда, собственно, ты клиента написал. Что тебе еще надо?
Ответить с цитированием
  #7  
Старый 12.01.2016, 22:15
Alick Alick вне форума
Прохожий
 
Регистрация: 12.01.2016
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
Вопрос

Цитата:
Ну, для начала, Access - это не сервер, просто локальная СУБД. Хотя, что бы поиграться - достаточно. Тогда, собственно, ты клиента написал. Что тебе еще надо?
подключение идет с помощью server socket и client.socket.
Какрас таки нужно добавлять записи в базу с помощью клиента. Это форма2

На форме1 закреплена уже база с помощью DBGrid и других компонентов. Вот в нее и нужно вносить новые строки с помощью формы2.
Сделал по этому шаблону . Только нужно что бы строка добавлялась

Последний раз редактировалось Alick, 12.01.2016 в 22:59.
Ответить с цитированием
  #8  
Старый 12.01.2016, 22:58
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну и в чем проблема?
Сделать вторую форму? Или прицепить вторую форму к текущей строке?

Form1 (главная, кнопка Добавить)
Код:
procedure TForm1.btAddRecordClick(Sender : TObject);
begin
  ADOQuery1.Add;
  With TForm2.Create(Application) Do
    Begin
      If Execute(DataSource1) 
        Then ADOQuery1.Post
        Else ADOQuery1.Cancel;
      Free;
    End;
end;

Form2. Кладем на форму DB-aware компоненты (TDBEdit и подобные), настраиваем в них имена полей. Также кладем 2 кнопки, у одной устанавливаем ModalResult в mrOK, у второй - в mrCancel. Добавляем такую функцию:
Код:
type
  TForm2 = class(TForm)
  ...
  public
    function Execute(ADataSource : TDataSource) : Boolean;
  end;

...

function TForm2.Execute(ADataSource : TDataSource) : Boolean;
begin
   // Подключаем контролы к источнику данных
   DBEdit1.DataSource := ADataSource;
   DBEdit2.DataSource := ADataSource;
   DBMemo1.DataSource := ADataSource;
   // И т.д. Можно написать автоматически обход компонентов,
   // но это пока для тебя "высший пилотаж"

   Result := ShowMOdal = mrOK;
end;

PS. Form2 в таком варианте надо "выкинуть" из списка автоматически создаваемых форм, т.к. она создается динамически. Выкидывать через Project | Options -> Forms или просто ее создание удалить в файле проекта (*.dpr)
Ответить с цитированием
  #9  
Старый 13.01.2016, 08:20
Alick Alick вне форума
Прохожий
 
Регистрация: 12.01.2016
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
Восклицание

Должен быть проект 1(сервер) и проект 2(клиент). С помощью ServerSocket и ClientSocket соединяться. Что это я уже сделал по видео. Осталось только добавлять строки с клиентской части

Цитата:
Сообщение от lmikle
Ну и в чем проблема?
Сделать вторую форму? Или прицепить вторую форму к текущей строке?

Form1 (главная, кнопка Добавить)
Код:
procedure TForm1.btAddRecordClick(Sender : TObject);
begin
  ADOQuery1.Add;
  With TForm2.Create(Application) Do
    Begin
      If Execute(DataSource1) 
        Then ADOQuery1.Post
        Else ADOQuery1.Cancel;
      Free;
    End;
end;

Form2. Кладем на форму DB-aware компоненты (TDBEdit и подобные), настраиваем в них имена полей. Также кладем 2 кнопки, у одной устанавливаем ModalResult в mrOK, у второй - в mrCancel. Добавляем такую функцию:
Код:
type
  TForm2 = class(TForm)
  ...
  public
    function Execute(ADataSource : TDataSource) : Boolean;
  end;

...

function TForm2.Execute(ADataSource : TDataSource) : Boolean;
begin
   // Подключаем контролы к источнику данных
   DBEdit1.DataSource := ADataSource;
   DBEdit2.DataSource := ADataSource;
   DBMemo1.DataSource := ADataSource;
   // И т.д. Можно написать автоматически обход компонентов,
   // но это пока для тебя "высший пилотаж"

   Result := ShowMOdal = mrOK;
end;

PS. Form2 в таком варианте надо "выкинуть" из списка автоматически создаваемых форм, т.к. она создается динамически. Выкидывать через Project | Options -> Forms или просто ее создание удалить в файле проекта (*.dpr)
Ответить с цитированием
  #10  
Старый 13.01.2016, 09:20
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Цитата:
Сообщение от Alick
Должен быть проект 1(сервер) и проект 2(клиент). С помощью ServerSocket и ClientSocket соединяться.
это как раз частный случай трехзвенной архитектуры, когда Access выполняет роль сервера БД, с которым работает сервер приложений, проект 1 (сервер) роль сервера приложений (в нем же и сервер БД), проект 2 (клиент) роль клиента. в Delphi такая архитектура делается нажатием нескольких кнопок мыши и не нужно самому транспорт изобретать.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #11  
Старый 13.01.2016, 11:59
Alick Alick вне форума
Прохожий
 
Регистрация: 12.01.2016
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от NumLock
это как раз частный случай трехзвенной архитектуры, когда Access выполняет роль сервера БД, с которым работает сервер приложений, проект 1 (сервер) роль сервера приложений (в нем же и сервер БД), проект 2 (клиент) роль клиента. в Delphi такая архитектура делается нажатием нескольких кнопок мыши и не нужно самому транспорт изобретать.


Подскажите как это сделать???????

Последний раз редактировалось Alick, 13.01.2016 в 15:07.
Ответить с цитированием
  #12  
Старый 13.01.2016, 18:34
Alick Alick вне форума
Прохожий
 
Регистрация: 12.01.2016
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию HELP

Цитата:
Сообщение от NumLock
это как раз частный случай трехзвенной архитектуры, когда Access выполняет роль сервера БД, с которым работает сервер приложений, проект 1 (сервер) роль сервера приложений (в нем же и сервер БД), проект 2 (клиент) роль клиента. в Delphi такая архитектура делается нажатием нескольких кнопок мыши и не нужно самому транспорт изобретать.

HELP HELP HELP HELP
Ответить с цитированием
  #13  
Старый 13.01.2016, 18:45
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

так "c:\Program Files (x86)\Borland\Delphi7\Demos\Midas\Login". под Windows 10 сервер 1 раз запустить под администратором.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #14  
Старый 13.01.2016, 19:15
Alick Alick вне форума
Прохожий
 
Регистрация: 12.01.2016
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
Смущение

Цитата:
Сообщение от NumLock
так "c:\Program Files (x86)\Borland\Delphi7\Demos\Midas\Login". под Windows 10 сервер 1 раз запустить под администратором.


НЕ помогли бы добить?
Вложения
Тип файла: rar Проект перезалит.rar (431.4 Кбайт, 6 просмотров)
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:01.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter