Създаване на приложение клиент-сървър в Delphi

Написано на 08 януари 2009 г. Публикувано в Delphi

И така, нека създадем нова база данни, наречем я Test и я запишем в папката C: \ ClientServer \ Server \ Data (по очевидни причини пропускам процеса на създаване на нова база данни в Access и ще дам само структурата на таблиците, включени в нашата база данни).

1. Таблица първа, нека първо я наречем

2. Таблица две, но нека я наречем сложна - Второ

Е, като че ли, с основата и това е всичко.

2.1. Сървърно приложение.

Нека да създадем ново приложение и да го запазим под името Сървър в папката C: \ ClientServer \ Server. Добавете към приложението Remote Data Module от раздела Multitier на хранилището (фиг. 1).

При добавяне на RDM съветникът за добавяне ще поиска параметрите на този модул - там ще въведем името на нашия сървър "Тест".

приложение

Останалите ще оставим непроменени. След като щракнете върху бутона „Ok“, в проекта ще се появи формуляр, подобен на обичайния модул за дата с името Test. Нека го запазим под името RDMFrm.pas.

приложение

Нека разложим компонентите ADOConnection (едно парче), ADOTable и DataSetProvider (по два броя всеки) върху него. Нека наречем съответно компонентите ADOTable и DataSetProvider adotFirst, adotSecond, dspFirst и dspSecond. Двойното щракване върху компонента ADOConnection ще отвори съветника за низа на свързване. Изберете елемента "Използване на низ за връзка" и щракнете върху бутона Изграждане. В прозореца „Свойства на връзката за данни“, който се показва, изберете елемента „Microsoft Jet 4.0 OLE DB Provider“ и натиснете бутона „Next“. В раздела „Връзка“ въведете пътя към базата данни, натиснете бутона „Проверка на връзката“ и получете съобщение, че проверката на връзката е завършена. След това затворете съветника, като щракнете върху бутона OK. Компонентът ADOConnection също има свойство LoginPrompt, което задаваме на False и Connected to True. За компоненти ADOTable задайте свойството Connection на ADOConnection, като изберете от падащия списък. Задайте свойството TableName съответно на First и Second. Свойството CursorType е ctDynamic, свойството TableDirect е True. Call FieldsEditor и добавете всички полета там.

Компоненти на DataSetProvider: