summaryrefslogtreecommitdiff
path: root/src/library/scala/dbc/statement/Table.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/library/scala/dbc/statement/Table.scala')
-rw-r--r--src/library/scala/dbc/statement/Table.scala36
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
+ })
+ )
+}