> 1 <

Автор Сообщение

diplisp

Members


Статус

1 сообщений

Где: Russia
Род занятий:
Возраст:

#2044   2010-05-14 04:32 GMT+3 часа(ов)      
Имеется магазин в котором продаются компьютеры.
О каждом экземляре нужно знать MARKA, PRODUTION DATA и так далее . . .
Записать данные в РБД.

такой участок программы (используем RULISP)

(DEFUN ERRORNB ()
(FOREGROUND-COLOR 12)
(WRITE-STRING "ERROR. DATA NULL. PUT ENTER ")
(FOREGROUND-COLOR 7)
(READ-LINE)
)

(DEFUN CLEAR ()
(SETQ BASE '())
)

;------------------------------------------------------------------------

(DEFUN OUT (SYM)
(PRINC "NUMBER SIGN MACHINE : ")
(PRINC SYM) (TERPRI)
(PRINC "MARKA : ")
(PRINC (GET SYM MARK))(TERPRI)
(PRINC "PRODUCTION DATE: ")
(PRINC (GET SYM DATE)) (TERPRI)
(PRINC "COUNTRY: ")
(PRINC (GET SYM COUNTRY))(TERPRI)
(PRINC "FRAME TYPE VEHICLE: ")
(PRINC (GET SYM TYPEB))(TERPRI)
(PRINC " PRICE TODAY : ")
(PRINC (CAR (GET SYM SOLD))) (TERPRI)
(PRINC "NAME CLIENT'S: ")
(PRINC (GET SYM BUYER)) (TERPRI)
(PROGN (WRITE-STRING "PRESS ENTER TO CONTINUE ") (TERPRI))
(TERPRI 2)
)
;-------------------------------------------------------------------------------
(DEFUN OUTALL (BAZ)
(IF (NULL BASE) (PROGN (ERRORNB) (RETURN)))
(IF (NULL BAZ) () (PROGN (OUT (CAR BAZ)) (OUTALL (CDR BAZ)))
)
);END (DEFUN OUTALL)



;-------------------------------------------------------------------------------
;добавление записи в БД
(DEFUN ADD (BAZ)
(READ-LINE)
(FOREGROUND-COLOR 10)
(WRITE-STRING " +++ ADD ELEMENT +++")
(FOREGROUND-COLOR 7)
(TERPRI 2)
(WRITE-STRING "PUT IN NUMBER SIGN MACHINE: ")
(setq SYM (READ-LINE))

(MEMBER BAZ)

(IF (EQL SYM "") (RETURN) () )
(WRITE-STRING "MARKA :: ")
(PUT SYM MARK (READ-LINE))
(CLEAR-INPUT)
(TERPRI)
(WRITE-STRING "PRODUCTION DATE: ")
(PUT SYM DATE (READ-LINE))
(WRITE-STRING "COUNTRY: ")
(PUT SYM COUNTRY (READ-LINE))
(WRITE-STRING "FRAME TYPE VEHICLE: ")
(PUT SYM TYPEB (READ-LINE))
(CLEAR-INPUT)
(TERPRI)
(FOREGROUND-COLOR 2)
(PUT SYM SOLD (READ))
(CLEAR-INPUT)
(TERPRI)
(FOREGROUND-COLOR 7)
(WRITE-STRING "NAME CLIENT'S: ")
(PUT SYM BUYER (READ-LINE))
(SETQ BASE (CONS SYM BAZ))
(WRITE-STRING " MISSION COMPLETE .PRESS ENTER")

); END ADD
;---------------------DEFUN FOR PRIMARY KEY-----------------------------------------
(defun MEMBER (BAZ)

(IF (EQL (CAR BAZ) SYM)
(PROGN (WRITE-STRING" DATA NOT NECESSARY. ADD DATA AGAIN!!!")
(SETQ SYM (READ-LINE))
(RETURN)))

)

;при добавлении пользователь должен заполнить ключевое поле. Я выбрал ключевое поле- это SIGN MACHINE.
;Если значение SIGN MACHINE: 123. Считали, что значение ключа "123" не может повторяться.
;Я сделал ключевое поле (DEFUN FOR PRIMARY KEY). И оно только сравнивается с самым предыдушем элементом данных.
;Как это исправить, чтобы необходимо при вводе ключа проверять , встречалось ли оно раше во всей базе данных. . ;Помогите пожалуйста друзья!!!!

отредактировал(а) diplisp: 2010-05-17 09:20 GMT+3 часа(ов)
> 1 <


Онлайн :

0 пользователь(ей), 45 гость(ей) :