diff options
Diffstat (limited to 'src/library/scala/dbc/statement/Table.scala')
-rw-r--r-- | src/library/scala/dbc/statement/Table.scala | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/library/scala/dbc/statement/Table.scala b/src/library/scala/dbc/statement/Table.scala new file mode 100644 index 0000000000..18a065e221 --- /dev/null +++ b/src/library/scala/dbc/statement/Table.scala @@ -0,0 +1,36 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2003-2005, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +package scala.dbc.statement; + +/** A reference to a table in the database. + * @author Gilles Dubochet + * @version 1.0 */ +abstract class Table extends Relation { + + /** The name of the table in the database. */ + def tableName: String; + + /** The name that the table will be called in the enclosing statement. */ + def tableRename: Option[String]; + + /** A SQL-99 compliant string representation of the relation statement. */ + def sqlString: String = { + "SELECT * FROM " + tableName + } + + /** A SQL-99 compliant string representation of the relation sub- + * statement. This only has a meaning inside a query. */ + def sqlInnerString: String = ( + tableName + + (tableRename match { + case None => "" + case Some(rename) => " AS " + rename + }) + ) +} |