<?xml version="1.0" encoding="UTF-8" ?> <class name="TableBuilder" inherits="Reference" version="4.3"> <brief_description> A class that helps you with building and running database backend specific sql for creating / altering / deleting tables. </brief_description> <description> A class that helps you with building and running database backend specific sql for creating / altering / deleting tables. It contains helper methods that lets you run the finished query directly See [method run] and [method run_query]. You should not allocate this directly, instead get it from you active database connection, like: [codeblock] var conn : DatabaseConnection = DatabaseManager.ddb.get_connection() var tb : TableBuilder = conn.get_table_builder() [/codeblock] </description> <tutorials> </tutorials> <methods> <method name="auto_increment"> <return type="TableBuilder" /> <description> Adds an [code]AUTO_INCREMENT[/code] statement. Equivalent to: [codeblock] result += "AUTO_INCREMENT " [/codeblock] </description> </method> <method name="ccreate_table"> <return type="TableBuilder" /> <description> Closes a [code]CREATE TABLE[/code] statement. Equivalent to: [codeblock] result += ");" [/codeblock] </description> </method> <method name="cdrop_table"> <return type="TableBuilder" /> <description> Closes a [code]DROP TABLE[/code] statement. Equivalent to: [codeblock] result += ";" [/codeblock] </description> </method> <method name="create_table"> <return type="TableBuilder" /> <argument index="0" name="value" type="String" /> <description> Adds a [code]CREATE TABLE[/code] statement. Equivalent to: [codeblock] result += "CREATE TABLE " + name + " ( " [/codeblock] </description> </method> <method name="date"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <description> Adds a [code]DATE[/code] field statement. Equivalent to: [codeblock] result += name + " DATE " [/codeblock] </description> </method> <method name="defval"> <return type="TableBuilder" /> <argument index="0" name="val" type="String" /> <description> Adds a [code]DEFAULT[/code] statement. Equivalent to: [codeblock] result += "DEFAULT '" + val + "'" [/codeblock] </description> </method> <method name="drop_table"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" default="""" /> <description> Adds a [code]DROP TABLE[/code] statement. Equivalent to: [codeblock] result += "DROP TABLE " [/codeblock] </description> </method> <method name="drop_table_if_exists"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" default="""" /> <description> Adds a [code]DROP TABLE IF EXISTS[/code] statement. Equivalent to: [codeblock] result += "DROP TABLE IF EXISTS " [/codeblock] </description> </method> <method name="foreign_key"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <description> Adds a [code]FOREIGN KEY[/code] statement. Equivalent to: [codeblock] result += "FOREIGN KEY (" + name + ") " [/codeblock] </description> </method> <method name="integer"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <argument index="1" name="length" type="int" default="-1" /> <description> Adds an [code]INTEGER[/code] field statement. Equivalent to: [codeblock] result += name + " INTEGER "; if (length != -1): result += "(" + str(length) + ") " [/codeblock] </description> </method> <method name="next_row"> <return type="TableBuilder" /> <description> Go the the next row (field) in the current sql statement. Equivalent to: [codeblock] result += ", " [/codeblock] </description> </method> <method name="not_null"> <return type="TableBuilder" /> <description> Adds a [code]NOT NULL[/code] statement. Equivalent to: [codeblock] result += "NOT NULL " [/codeblock] </description> </method> <method name="null"> <return type="TableBuilder" /> <description> Adds a [code]NULL[/code] statement. Equivalent to: [codeblock] result += "NULL " [/codeblock] </description> </method> <method name="primary_key"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" default="""" /> <description> Adds a [code]PRIMARY KEY[/code] statement. Equivalent to: [codeblock] result += "PRIMARY KEY (" + name + ") " [/codeblock] </description> </method> <method name="real_double"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <argument index="1" name="size" type="int" default="-1" /> <argument index="2" name="d" type="int" default="-1" /> <description> Adds an [code]DOUBLE[/code] field statement. Equivalent to: [codeblock] result += name + " DOUBLE " [/codeblock] </description> </method> <method name="real_float"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <argument index="1" name="size" type="int" default="-1" /> <argument index="2" name="d" type="int" default="-1" /> <description> Adds an [code]FLOAT[/code] field statement. Equivalent to: [codeblock] result += name + " FLOAT " [/codeblock] </description> </method> <method name="references"> <return type="TableBuilder" /> <argument index="0" name="table" type="String" /> <argument index="1" name="name" type="String" /> <description> result += "REFERENCES " + table + " (" + name + ") "; </description> </method> <method name="run"> <return type="QueryResult" /> <description> Run the query currently stored in the result property. Use this if your query returns values from the database (an you want to read them). </description> </method> <method name="run_query"> <return type="void" /> <description> Run the query currently stored in the result property. Use this if your query doesn't return values from the database (or you don't want to read them if it does). </description> </method> <method name="small_integer"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <argument index="1" name="length" type="int" default="-1" /> <description> Adds a [code]SMALL INTEGER[/code] field statement. Equivalent to: [codeblock] result += name + " INTEGER(" if (length == -1): result += "6" else: result += itos(length) result += ") " [/codeblock] </description> </method> <method name="text"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <description> Adds a [code]TEXT[/code] field statement. Equivalent to: [codeblock] result += name + " TEXT " [/codeblock] </description> </method> <method name="tiny_integer"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <argument index="1" name="length" type="int" default="-1" /> <description> Adds a [code]TINY INTEGER[/code] field statement. Equivalent to: [codeblock] result += name + " INTEGER(" if (length == -1): result += "4" else: result += itos(length) result += ") " [/codeblock] </description> </method> <method name="varchar"> <return type="TableBuilder" /> <argument index="0" name="name" type="String" /> <argument index="1" name="length" type="int" default="-1" /> <description> Adds a [code]VARCHAR[/code] field statement. Equivalent to: [codeblock] result += name + " VARCHAR "; if (length != -1): result += "(" + str(length) + ") " [/codeblock] </description> </method> </methods> <members> <member name="result" type="String" setter="set_result" getter="get_result" default=""""> The current (resulting) sql statement. </member> </members> <constants> </constants> </class>