![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Доброго времени суток, ув. форумчане!
Помогите пожалуйста! Задача такова: Необходимо разработать клиент-серверное приложение "БАНКОМАТ" Подскажите с чего начать........ ? |
#2
|
||||
|
||||
![]() Это будет реальная задача с реальным банкоматом? %(
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
||||
|
||||
![]() Нет это практическое задание по информатике......
|
#4
|
||||
|
||||
![]() Уф, полегчало. Разве можно так пугать.
Я начал опасаться за нашу итак неслишком надежную банковскую систему. ![]() А по вопросу. Наверное первое с чего надо начать, это сэмулировать работу банковского аппарата на клиенте. Типа вставьте карту, введите пинкод, выберите операцию ... Заберите вашу опустошенную карту. После этого можно уже сделать таблицы под эти данные, и т.д. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#5
|
||||
|
||||
![]() Точно в цель! Преподватель так и говорил!
Я вот думаю начать с создания БД клиентов! Ну вот только не знаю как это сделать....... Может есть какие-то идеи.....? |
#6
|
||||
|
||||
![]() У вас предполагается отдельно БД клиентов, а отдельно серверная БД?
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#7
|
||||
|
||||
![]() Нет база одна, хранится на сервере!
А клиенты получают к ней доступ с определенными правами: - проверка счета (права только чтения) - снятие, перевод денег (права на редактирование) |
#8
|
||||
|
||||
![]() - проверка счета (права только чтения)
- снятие, перевод денег (права на редактирование) Как-то вы неверно применяете права. В приведенном вами примере права вообще ни причем, просто в первом случае запрос на получение данных, а во втором на изменение. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#9
|
||||
|
||||
![]() Да, наверное непрвельно понял!
Страдалецъ, а можешь привести примеры как выполнить запрос на получение, и редактирование данных..... очень буду признателен..... Зарание спасибо! |
#10
|
||||
|
||||
![]() Приведу пример как это будет происходить на Дельфи применительно к вашей задаче:
Допустим есть таблица в которой содержиться информацио о клиенте: ClientInfo(ID,PIN,FirstName,MiddleName,LastName,Ba lance) и таблица в которой записываются операции со счетами. OperationJournal(ClientID,Operation,OperationDate) Мы хотим получить список всех операций клиента с PIN='0000001' Код:
Q := TAdoQuery.Create(nil); Q.Connection := AdoConnection1; Q.SQL.Text := ‘select OperationJournal.* from ClientInfo inner join OperationJournal on OperationJournal.ClientID=ClientInfo.ID where ClientInfo.Pin = :Pin’ ; Q.Parameters.ParamValues[‘Pin’] := ‘0000001’; Q.Open; Здесь уже одним запросом не сделать, т.к изменятся будут сразу две таблицы. Сначала получим код клиента с PIN='0000001': Код:
Q := TAdoQuery.Create(nil); Q.Connection := AdoConnection1; Q.SQL.Text := ‘Select ID from ClientInfo where PIN=:Pin’ ; Q.Parameters.ParamValues[‘Pin’] := ‘0000001’; Q.Open; ClientID := Q.FieldValues[‘ID’]; Код:
Q.SQL.Text := ’Insert into OperationJournal (ClientID,Operation,OperationDate) Values(:ID,:Operation,:Date); Q.Parameters.ParamValues[‘ID’] := ClientID; Q.Parameters.ParamValues[‘Operation’] := 'Снятие со счета'; Q.Parameters.ParamValues[‘Date’] := Now; Q.ExecSQL; Код:
Q.SQL.Text := ’Update ClientInfo set Balance = Balance + :Value where ID=:ClientID’; Q.Parameters.ParamValues[‘ID’] := ClientID; Q.Parameters.ParamValues[‘Value’] := -1000; Q.ExecSQL; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 26.04.2009 в 19:55. |
#11
|
||||
|
||||
![]() Спасибо, конечно ну это немножечко не то...
![]() Ты привел пример с использованием технологии ADO, а мне надо на InterBase.... |
#12
|
|||
|
|||
![]() А какая разница. Замени ADO на IBX и будет то же самое. Только транзацию надо указать...
|
#13
|
||||
|
||||
![]() Вы же просили примеры на получение редактирование данных, вот я вам их и дал. Компоненты через которые вы будете это делать работают практически по одному и тому-же принципу. Текст запроса тоже не претерпит изменения от перехода с ADO на Interbase. Единственное отличие, это обязательность транзакций т.к. интербейс так называемая многоверсионная БД, где каждая операция связанная с изменением БД порождает новую версию данных и соответственно можно получить всю историю с откатом на любую версию.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#14
|
||||
|
||||
![]() На основании технологии ADO я занаю как делать, у меня проблемы с Inter Base.....
Мне бы примерчик ...... |
#15
|
|||
|
|||
![]() Я ж говорю. Все тоже самое 1 в 1, толко компоненты IBX используй. И все.
Только они требуют отдельного компонента IBTransaction. Это единственная разница. |