fix timestamps in db
parent
ca1484b94c
commit
358bbab861
|
@ -69,6 +69,11 @@ M: postgresql-result-null summary ( obj -- str )
|
||||||
: malloc-byte-array/length
|
: malloc-byte-array/length
|
||||||
[ malloc-byte-array dup free-always ] [ length ] bi ;
|
[ malloc-byte-array dup free-always ] [ length ] bi ;
|
||||||
|
|
||||||
|
: default-param-value
|
||||||
|
number>string* dup [
|
||||||
|
utf8 malloc-string dup free-always
|
||||||
|
] when 0 ;
|
||||||
|
|
||||||
: param-values ( statement -- seq seq2 )
|
: param-values ( statement -- seq seq2 )
|
||||||
[ bind-params>> ] [ in-params>> ] bi
|
[ bind-params>> ] [ in-params>> ] bi
|
||||||
[
|
[
|
||||||
|
@ -77,11 +82,11 @@ M: postgresql-result-null summary ( obj -- str )
|
||||||
dup [ object>bytes malloc-byte-array/length ] [ 0 ] if
|
dup [ object>bytes malloc-byte-array/length ] [ 0 ] if
|
||||||
] }
|
] }
|
||||||
{ BLOB [ dup [ malloc-byte-array/length ] [ 0 ] if ] }
|
{ BLOB [ dup [ malloc-byte-array/length ] [ 0 ] if ] }
|
||||||
[
|
{ DATE [ dup [ timestamp>ymd ] when default-param-value ] }
|
||||||
drop number>string* dup [
|
{ TIME [ dup [ timestamp>hms ] when default-param-value ] }
|
||||||
utf8 malloc-string dup free-always
|
{ DATETIME [ dup [ timestamp>ymdhms ] when default-param-value ] }
|
||||||
] when 0
|
{ TIMESTAMP [ dup [ timestamp>ymdhms ] when default-param-value ] }
|
||||||
]
|
[ drop default-param-value ]
|
||||||
} case 2array
|
} case 2array
|
||||||
] 2map flip dup empty? [
|
] 2map flip dup empty? [
|
||||||
drop f f
|
drop f f
|
||||||
|
|
|
@ -97,10 +97,10 @@ IN: db.sqlite.lib
|
||||||
{ TEXT [ sqlite-bind-text-by-name ] }
|
{ TEXT [ sqlite-bind-text-by-name ] }
|
||||||
{ VARCHAR [ sqlite-bind-text-by-name ] }
|
{ VARCHAR [ sqlite-bind-text-by-name ] }
|
||||||
{ DOUBLE [ sqlite-bind-double-by-name ] }
|
{ DOUBLE [ sqlite-bind-double-by-name ] }
|
||||||
{ DATE [ sqlite-bind-text-by-name ] }
|
{ DATE [ timestamp>ymd sqlite-bind-text-by-name ] }
|
||||||
{ TIME [ sqlite-bind-text-by-name ] }
|
{ TIME [ timestamp>hms sqlite-bind-text-by-name ] }
|
||||||
{ DATETIME [ sqlite-bind-text-by-name ] }
|
{ DATETIME [ timestamp>ymdhms sqlite-bind-text-by-name ] }
|
||||||
{ TIMESTAMP [ sqlite-bind-text-by-name ] }
|
{ TIMESTAMP [ timestamp>ymdhms sqlite-bind-text-by-name ] }
|
||||||
{ BLOB [ sqlite-bind-blob-by-name ] }
|
{ BLOB [ sqlite-bind-blob-by-name ] }
|
||||||
{ FACTOR-BLOB [
|
{ FACTOR-BLOB [
|
||||||
object>bytes
|
object>bytes
|
||||||
|
|
|
@ -121,8 +121,16 @@ SYMBOL: person4
|
||||||
} define-persistent
|
} define-persistent
|
||||||
"billy" 10 3.14 f f f f f <person> person1 set
|
"billy" 10 3.14 f f f f f <person> person1 set
|
||||||
"johnny" 10 3.14 f f f f f <person> person2 set
|
"johnny" 10 3.14 f f f f f <person> person2 set
|
||||||
"teddy" 10 3.14 "2008-03-05 16:24:11" "2008-11-22" "12:34:56" B{ 115 116 111 114 101 105 110 97 98 108 111 98 } f <person> person3 set
|
"teddy" 10 3.14
|
||||||
"eddie" 10 3.14 "2008-03-05 16:24:11" "2008-11-22" "12:34:56" f H{ { 1 2 } { 3 4 } { 5 "lol" } } <person> person4 set ;
|
T{ timestamp f 2008 3 5 16 24 11 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f 2008 11 22 0 0 0 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f f f f 12 34 56 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
B{ 115 116 111 114 101 105 110 97 98 108 111 98 } f <person> person3 set
|
||||||
|
"eddie" 10 3.14
|
||||||
|
T{ timestamp f 2008 3 5 16 24 11 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f 2008 11 22 0 0 0 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f f f f 12 34 56 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
f H{ { 1 2 } { 3 4 } { 5 "lol" } } <person> person4 set ;
|
||||||
|
|
||||||
: assigned-person-schema ( -- )
|
: assigned-person-schema ( -- )
|
||||||
person "PERSON"
|
person "PERSON"
|
||||||
|
@ -139,8 +147,17 @@ SYMBOL: person4
|
||||||
} define-persistent
|
} define-persistent
|
||||||
1 "billy" 10 3.14 f f f f f <assigned-person> person1 set
|
1 "billy" 10 3.14 f f f f f <assigned-person> person1 set
|
||||||
2 "johnny" 10 3.14 f f f f f <assigned-person> person2 set
|
2 "johnny" 10 3.14 f f f f f <assigned-person> person2 set
|
||||||
3 "teddy" 10 3.14 "2008-03-05 16:24:11" "2008-11-22" "12:34:56" B{ 115 116 111 114 101 105 110 97 98 108 111 98 } f <assigned-person> person3 set
|
3 "teddy" 10 3.14
|
||||||
4 "eddie" 10 3.14 "2008-03-05 16:24:11" "2008-11-22" "12:34:56" f H{ { 1 2 } { 3 4 } { 5 "lol" } } <assigned-person> person4 set ;
|
T{ timestamp f 2008 3 5 16 24 11 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f 2008 11 22 0 0 0 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f f f f 12 34 56 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
B{ 115 116 111 114 101 105 110 97 98 108 111 98 }
|
||||||
|
f <assigned-person> person3 set
|
||||||
|
4 "eddie" 10 3.14
|
||||||
|
T{ timestamp f 2008 3 5 16 24 11 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f 2008 11 22 0 0 0 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
T{ timestamp f f f f 12 34 56 T{ duration f 0 0 0 0 0 0 } }
|
||||||
|
f H{ { 1 2 } { 3 4 } { 5 "lol" } } <assigned-person> person4 set ;
|
||||||
|
|
||||||
TUPLE: paste n summary author channel mode contents timestamp annotations ;
|
TUPLE: paste n summary author channel mode contents timestamp annotations ;
|
||||||
TUPLE: annotation n paste-id summary author mode contents ;
|
TUPLE: annotation n paste-id summary author mode contents ;
|
||||||
|
|
Loading…
Reference in New Issue