work in progress: get-track by trackid: select OK
This commit is contained in:
parent
8b006042d4
commit
3b3cfaf732
3 changed files with 16 additions and 9 deletions
|
@ -3,11 +3,6 @@
|
||||||
(asdf:load-system :scopes)
|
(asdf:load-system :scopes)
|
||||||
|
|
||||||
(in-package :cl-user)
|
(in-package :cl-user)
|
||||||
(ext:add-package-local-nickname :scf :scopes/forge)
|
|
||||||
(ext:add-package-local-nickname :sctf :scopes/test-forge)
|
|
||||||
|
|
||||||
(scopes/test-forge:run)
|
|
||||||
|
|
||||||
|
|
||||||
;;; real scratch area
|
;;; real scratch area
|
||||||
|
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
(:local-nicknames (:jzon :com.inuoe.jzon)
|
(:local-nicknames (:jzon :com.inuoe.jzon)
|
||||||
(:storage :scopes/storage))
|
(:storage :scopes/storage))
|
||||||
(:export #:track #:trackid #:head #:head-plist #:time-stamp #:data
|
(:export #:track #:trackid #:head #:head-plist #:time-stamp #:data
|
||||||
#:container
|
#:container #:insert
|
||||||
#:make-item
|
#:make-item
|
||||||
#:insert
|
#:get-track
|
||||||
#:create-indexes #:create-table))
|
#:create-indexes #:create-table))
|
||||||
|
|
||||||
(in-package :scopes/storage/tracking)
|
(in-package :scopes/storage/tracking)
|
||||||
|
@ -55,6 +55,7 @@
|
||||||
(if data (setf (getf vl :data) (jzon:stringify data))))
|
(if data (setf (getf vl :data) (jzon:stringify data))))
|
||||||
vl))
|
vl))
|
||||||
|
|
||||||
|
|
||||||
(defun insert (track)
|
(defun insert (track)
|
||||||
(ensure-timestamp track)
|
(ensure-timestamp track)
|
||||||
(let* ((cont (container track))
|
(let* ((cont (container track))
|
||||||
|
@ -67,6 +68,16 @@
|
||||||
(setf (trackid track) (cadr res))
|
(setf (trackid track) (cadr res))
|
||||||
track))
|
track))
|
||||||
|
|
||||||
|
(defun get-track (cont trid)
|
||||||
|
(let* ((st (storage cont))
|
||||||
|
(table (storage:qualified-table-name st (table-name cont)))
|
||||||
|
(cols (append (head-fields cont) '(:timestamp :data)))
|
||||||
|
(res (storage:normalize-plist (car (storage:query st
|
||||||
|
(sxql:select cols
|
||||||
|
(sxql:from table)
|
||||||
|
(sxql:where (:= :trackid trid))))))))
|
||||||
|
res))
|
||||||
|
|
||||||
(defun create-table (cont)
|
(defun create-table (cont)
|
||||||
(let*
|
(let*
|
||||||
((st (storage cont))
|
((st (storage cont))
|
||||||
|
|
|
@ -50,4 +50,5 @@
|
||||||
(setf (tracking:data tr) data)
|
(setf (tracking:data tr) data)
|
||||||
(tracking:insert tr)
|
(tracking:insert tr)
|
||||||
(== (tracking:trackid tr) 1)
|
(== (tracking:trackid tr) 1)
|
||||||
|
(print (tracking:get-track cont 1))
|
||||||
))
|
))
|
||||||
|
|
Loading…
Add table
Reference in a new issue