Your MySQL table structures are completely flexible with two exceptions:

  • Each table that is used in a Form, View, Embeddable Form, Report, or Module Class must contain a PRIMARY KEY column with the following setup:
    • Column Name: "id"
    • Column Type: INT, unsigned, auto increment (advised length is 11, but it's flexible with the amount of data your table expects)
  • Reserved Column names have implied functionality in BigTree. While they can be used for other things, they may not work properly in Forms, Views, and Embeddable Forms.

Reserved Columns

 The following columns are reserved columns:

  • "id" — The primary key of every table
  • "approved" — CHAR(2) column used for modules to work with the view action as well as BigTreeModule's getApproved and getUnapproved methods.
  • "archived" — CHAR(2) column used for modules to work with the view action as well as BigTreeModule's getArchived and getUnarchived methods.
  • "featured" — CHAR(2) column used for modules to work with the view action as well as BigTreeModule's getFeatured method.
  • "position" — INT(11) column used for draggable views as well as BigTreeModule's getAllPositioned method.