parent
19d771f827
commit
6ea88c2e82
|
@ -33,6 +33,13 @@ SYMBOL: the-person2
|
|||
|
||||
[ T{ person f 1 "billy" 200 3.14 } ]
|
||||
[ T{ person f 1 } select-tuple ] unit-test
|
||||
[ ] [ the-person2 get insert-tuple ] unit-test
|
||||
[
|
||||
{
|
||||
T{ person f 1 "billy" 200 3.14 }
|
||||
T{ person f 2 "johnny" 10 3.14 }
|
||||
}
|
||||
] [ T{ person f f f f 3.14 } select-tuples ] unit-test
|
||||
|
||||
[ ] [ the-person1 get delete-tuple ] unit-test
|
||||
[ f ] [ T{ person f 1 } select-tuple ] unit-test
|
||||
|
@ -71,6 +78,7 @@ person "PERSON"
|
|||
} define-persistent
|
||||
|
||||
1 "billy" 10 3.14 <assigned-person> the-person1 set
|
||||
2 "johnny" 10 3.14 <assigned-person> the-person2 set
|
||||
|
||||
! test-sqlite
|
||||
test-postgresql
|
||||
|
@ -108,4 +116,3 @@ annotation "ANNOTATION"
|
|||
[ ] [ paste create-table ] unit-test
|
||||
[ ] [ annotation create-table ] unit-test
|
||||
] with-db
|
||||
|
||||
|
|
|
@ -50,10 +50,7 @@ HOOK: insert-tuple* db ( tuple statement -- )
|
|||
|
||||
: query-tuples ( statement -- seq )
|
||||
[ statement-out-params ] keep query-results [
|
||||
! out-parms result-set
|
||||
[
|
||||
sql-row swap resulting-tuple
|
||||
] with query-map
|
||||
[ sql-row swap resulting-tuple ] with query-map
|
||||
] with-disposal ;
|
||||
|
||||
: query-modify-tuple ( tuple statement -- )
|
||||
|
@ -91,16 +88,10 @@ HOOK: insert-tuple* db ( tuple statement -- )
|
|||
: update-tuples ( seq -- )
|
||||
<update-tuples-statement> execute-statement ;
|
||||
|
||||
: persist ( tuple -- )
|
||||
dup class db-columns find-primary-key
|
||||
sql-spec-slot-name over get-slot-named
|
||||
[ update-tuple ] [ insert-tuple ] if ;
|
||||
|
||||
: delete-tuple ( tuple -- )
|
||||
dup class <delete-tuple-statement>
|
||||
[ bind-tuple ] keep execute-statement ;
|
||||
|
||||
|
||||
: setup-select ( tuple -- statement )
|
||||
dup dup class <select-by-slots-statement>
|
||||
[ bind-tuple ] keep ;
|
||||
|
|
Loading…
Reference in New Issue