aboutsummaryrefslogtreecommitdiff
path: root/schema
diff options
context:
space:
mode:
authorAbyss777 <abyss@fox5.ru>2017-05-10 13:27:49 +0500
committerAbyss777 <abyss@fox5.ru>2017-05-12 17:55:01 +0500
commit6c17f85d04b224ff2a09265918765c9f4fc8cf94 (patch)
tree5bbebd7f66b5af547267751fdb4de21283489716 /schema
parent4ce5dd893d3b95fc759fd1d0e0dbf09d0d559936 (diff)
downloadtraccar-server-6c17f85d04b224ff2a09265918765c9f4fc8cf94.tar.gz
traccar-server-6c17f85d04b224ff2a09265918765c9f4fc8cf94.tar.bz2
traccar-server-6c17f85d04b224ff2a09265918765c9f4fc8cf94.zip
Implement computed attributes
Diffstat (limited to 'schema')
-rw-r--r--schema/changelog-3.12.xml54
1 files changed, 54 insertions, 0 deletions
diff --git a/schema/changelog-3.12.xml b/schema/changelog-3.12.xml
index 43c0e33f0..137273b49 100644
--- a/schema/changelog-3.12.xml
+++ b/schema/changelog-3.12.xml
@@ -22,6 +22,60 @@
<constraints nullable="false" />
</column>
</addColumn>
+
+ <createTable tableName="attributes">
+ <column name="id" type="INT" autoIncrement="true">
+ <constraints primaryKey="true" />
+ </column>
+ <column name="description" type="VARCHAR(4000)">
+ <constraints nullable="false" />
+ </column>
+ <column name="type" type="VARCHAR(128)">
+ <constraints nullable="false" />
+ </column>
+ <column name="attribute" type="VARCHAR(128)">
+ <constraints nullable="false" />
+ </column>
+ <column name="expression" type="VARCHAR(4000)">
+ <constraints nullable="false" />
+ </column>
+ </createTable>
+
+ <createTable tableName="user_attribute">
+ <column name="userid" type="INT">
+ <constraints nullable="false" />
+ </column>
+ <column name="attributeid" type="INT">
+ <constraints nullable="false" />
+ </column>
+ </createTable>
+
+ <addForeignKeyConstraint baseTableName="user_attribute" baseColumnNames="userid" constraintName="fk_user_attribute_userid" referencedTableName="users" referencedColumnNames="id" onDelete="CASCADE" />
+ <addForeignKeyConstraint baseTableName="user_attribute" baseColumnNames="attributeid" constraintName="fk_user_attribute_attributeid" referencedTableName="attributes" referencedColumnNames="id" onDelete="CASCADE" />
+
+ <createTable tableName="group_attribute">
+ <column name="groupid" type="INT">
+ <constraints nullable="false" />
+ </column>
+ <column name="attributeid" type="INT">
+ <constraints nullable="false" />
+ </column>
+ </createTable>
+
+ <addForeignKeyConstraint baseTableName="group_attribute" baseColumnNames="groupid" constraintName="fk_group_attribute_groupid" referencedTableName="groups" referencedColumnNames="id" onDelete="CASCADE" />
+ <addForeignKeyConstraint baseTableName="group_attribute" baseColumnNames="attributeid" constraintName="fk_group_attribute_attributeid" referencedTableName="attributes" referencedColumnNames="id" onDelete="CASCADE" />
+
+ <createTable tableName="device_attribute">
+ <column name="deviceid" type="INT">
+ <constraints nullable="false" />
+ </column>
+ <column name="attributeid" type="INT">
+ <constraints nullable="false" />
+ </column>
+ </createTable>
+
+ <addForeignKeyConstraint baseTableName="device_attribute" baseColumnNames="deviceid" constraintName="fk_device_attribute_deviceid" referencedTableName="devices" referencedColumnNames="id" onDelete="CASCADE" />
+ <addForeignKeyConstraint baseTableName="device_attribute" baseColumnNames="attributeid" constraintName="fk_device_attribute_attributeid" referencedTableName="attributes" referencedColumnNames="id" onDelete="CASCADE" />
</changeSet>