view demo/view.ur @ 783:ec0a0dd0ca12

Revising manual through end of Section 3
author Adam Chlipala <adamc@hcoop.net>
date Tue, 05 May 2009 11:45:03 -0400
parents 7b47fc964a0f
children 669ac5e9a69e
line wrap: on
line source
table t : { A : int }
view v = SELECT t.A AS A FROM t WHERE t.A > 7

fun list (u ::: Type) (_ : fieldsOf u [A = int]) (title : string) (x : u) =
    xml <- queryX (SELECT * FROM x)
           (fn r : {X : {A : int}} => <xml><li>{[r.X.A]}</li></xml>);
    return <xml>
      <h2>{[title]}</h2>
      <ul>{xml}</ul>
    </xml>

fun main () =
    listT <- list "T" t;
    listV <- list "V" v;
    return <xml><body>
      {listT}
      {listV}
      <br/>

      <form>Insert: <textbox{#A}/> <submit action={ins}/></form>
    </body></xml>

and ins r =
    dml (INSERT INTO t (A) VALUES ({[readError r.A]}));
    main ()