adamc@467
|
1 table t : { O : option int }
|
adamc@467
|
2
|
adamc@467
|
3 fun addNull () =
|
adamc@467
|
4 dml (INSERT INTO t (O) VALUES (NULL));
|
adamc@467
|
5 return <xml>Done</xml>
|
adamc@467
|
6
|
adamc@468
|
7 fun add3 () =
|
adamc@468
|
8 dml (INSERT INTO t (O) VALUES ({Some 3}));
|
adamc@468
|
9 return <xml>Done</xml>
|
adamc@468
|
10
|
adamc@468
|
11 fun addN r =
|
adamc@468
|
12 dml (INSERT INTO t (O) VALUES ({Some (readError r.N)}));
|
adamc@468
|
13 return <xml>Done</xml>
|
adamc@467
|
14
|
adamc@467
|
15 fun main () : transaction page =
|
adamc@467
|
16 xml <- queryX (SELECT * FROM t)
|
adamc@467
|
17 (fn r => case r.T.O of
|
adamc@467
|
18 None => <xml>Nada<br/></xml>
|
adamc@467
|
19 | Some n => <xml>Num: {[n]}<br/></xml>);
|
adamc@467
|
20 return <xml><body>
|
adamc@467
|
21 {xml}
|
adamc@467
|
22
|
adamc@467
|
23 <a link={addNull ()}>Add a null</a><br/>
|
adamc@468
|
24 <a link={add3 ()}>Add a 3</a><br/>
|
adamc@468
|
25 <form>
|
adamc@468
|
26 Add <textbox{#N}/> <submit action={addN}/>
|
adamc@468
|
27 </form>
|
adamc@467
|
28 </body></xml>
|