diff options
author | Adam Chlipala <adamc@hcoop.net> | 2008-09-07 13:29:01 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2008-09-07 13:29:01 -0400 |
commit | 9f8b222f6667f4e7dec2105ea4f5c2abdfd29dc9 (patch) | |
tree | 90104da9ab622189caffe5a38bddcb8bfe797233 /tests | |
parent | 4a627a550cb54c18cb16cc0ad852e6a0bbc59c31 (diff) |
pquery working with all four types of columns
Diffstat (limited to 'tests')
-rw-r--r-- | tests/pquery.ur | 50 |
1 files changed, 41 insertions, 9 deletions
diff --git a/tests/pquery.ur b/tests/pquery.ur index ea53f7c9..eb240909 100644 --- a/tests/pquery.ur +++ b/tests/pquery.ur @@ -1,19 +1,51 @@ table t1 : {A : int, B : string, C : float, D : bool} -fun lookup (inp : {B : string}) = - s <- query (SELECT * FROM t1 WHERE t1.B = {inp.B}) - (fn fs _ => return fs.T1) - {A = 0, B = "Couldn't find it!", C = 0.0, D = False}; +fun display (q : sql_query [T1 = [A = int, B = string, C = float, D = bool]] []) = + s <- query q + (fn fs _ => return (Some fs.T1)) + None; return <html><body> - A: {cdata (show _ s.A)}<br/> - B: {cdata (show _ s.B)}<br/> - C: {cdata (show _ s.C)}<br/> - D: {cdata (show _ s.D)}<br/> + {case s of + None => cdata "Row not found." + | Some s => + <body> + A: {cdata (show _ s.A)}<br/> + B: {cdata (show _ s.B)}<br/> + C: {cdata (show _ s.C)}<br/> + D: {cdata (show _ s.D)}<br/> + </body>} </body></html> +fun lookupA (inp : {A : string}) = + display (SELECT * FROM t1 WHERE t1.A = {readError _ inp.A : int}) + +fun lookupB (inp : {B : string}) = + display (SELECT * FROM t1 WHERE t1.B = {inp.B}) + +fun lookupC (inp : {C : string}) = + display (SELECT * FROM t1 WHERE t1.C = {readError _ inp.C : float}) + +fun lookupD (inp : {D : string}) = + display (SELECT * FROM t1 WHERE t1.D = {readError _ inp.D : bool}) + fun main () : transaction page = return <html><body> <lform> + A: <textbox{#A}/> + <submit action={lookupA}/> + </lform> + + <lform> B: <textbox{#B}/> - <submit action={lookup}/> + <submit action={lookupB}/> + </lform> + + <lform> + C: <textbox{#C}/> + <submit action={lookupC}/> + </lform> + + <lform> + D: <textbox{#D}/> + <submit action={lookupD}/> </lform> </body></html> |