Name

UPDATE-RECORD-FROM-SLOTS — Update database from slots of view class object.function

syntax

      update-record-from-slots object slots &key database => 

Arguments and Values

object

An instance of a View Class.

slots

A list of slot names in object.

database

A database object. This will default to the value of *default-database*.

Description

Updates the values stored in the columns represented by the slots, specified by the clos slot names slots, of View Class instance object. database specifies the database in which the update is made only if object is not associated with a database. In this case, a record is created in the appropriate table of database and the attributes represented by slots are initialised from the values of the supplied slots with other attributes having default values. Furthermore, object becomes associated with database.

Examples

(select [last-name] [email] :from [employee] :where [= [emplid] 1] :field-names nil)
=> (("Lenin" "lenin@soviet.org"))
(defvar *e1* (car (select 'employee :where [= [slot-value 'employee 'emplid] 1] :flatp t)))
=> *E1* 
(slot-value *e1* 'last-name)
=> "Lenin"
(slot-value *e1* 'email)
=> "lenin@soviet.org"
(setf (slot-value *e1* 'last-name) "Ivanovich")
=> "Ivanovich"
(setf (slot-value *e1* 'email) "v.ivanovich@soviet.org")
=> "v.ivanovich@soviet.org"
(update-record-from-slots *e1* '(email last-name))
=> 
(select [last-name] [email] :from [employee] :where [= [emplid] 1] :field-names nil)
=> (("Ivanovich" "v.ivanovich@soviet.org"))
      

Side Effects

Modifies the SQL database.

Affected by

Nothing.

Exceptional Situations

Database errors.

See Also

update-record-from-slot
update-records-from-instance

Notes

None.