Ch.10 SML# feature: seamless SQL integration

§ 10.5. Other SQL statements

SQL contain many other commands SQL. SML# version 2.0.0 support the following:

  • insert and delete,

  • table update, and

  • transaction.

Figure 10.1 shows the currently supported SQL expressions in SML#. (Warning: Rending this figure requires a MathML-capable browser such as FireFox.)

e::=(SML# expressions)|_sqlserver serverDef : τ(server definition)|_sql x => sql(SQL expressions)|_sqleval e(query evaluation)|_sqlexec e(command execution)|#x.l(selection)serverDef::=(key=value,,key=value)sql::=select | insert | update | begin | commit | rollbackselect::=select e [ as l ]  e [ as l ][ from e as x  e as x ][ where e ](other clauses)insert::=insert into #x.l (ll)values ( {e|default}{e|default})update::=update #x.l [ as x ]set (ll) = (ee)[ from e as x  e as x ][ where e ]delete::=delete from #x.l [ as x ][ where e ]

Figure 10.1. SQL expressions in SML# version 2.0.0

There is no technical problems in adding other commands.