diff options
Diffstat (limited to 'schema')
-rw-r--r-- | schema/changelog-3.6.xml | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/schema/changelog-3.6.xml b/schema/changelog-3.6.xml index e2fd72a61..13d4cae60 100644 --- a/schema/changelog-3.6.xml +++ b/schema/changelog-3.6.xml @@ -26,6 +26,7 @@ </column> <column name="deviceid" type="INT" /> <column name="positionid" type="INT" /> + <column name="geofenceid" type="INT" /> <column name="attributes" type="VARCHAR(4096)"> <constraints nullable="false" /> </column> @@ -37,5 +38,57 @@ <column name="motion" type="VARCHAR(128)" /> </addColumn> + <createTable tableName="geofences"> + <column name="id" type="INT" autoIncrement="true"> + <constraints primaryKey="true" /> + </column> + <column name="name" type="VARCHAR(128)"> + <constraints nullable="false" /> + </column> + <column name="description" type="VARCHAR(128)" /> + <column name="area" type="VARCHAR(4096)"> + <constraints nullable="false" /> + </column> + <column name="attributes" type="VARCHAR(4096)"> + <constraints nullable="false" /> + </column> + </createTable> + + <createTable tableName="user_geofence"> + <column name="userid" type="INT"> + <constraints nullable="false" /> + </column> + <column name="geofenceid" type="INT"> + <constraints nullable="false" /> + </column> + </createTable> + + <addForeignKeyConstraint baseTableName="user_geofence" baseColumnNames="userid" constraintName="fk_user_geofence_userid" referencedTableName="users" referencedColumnNames="id" onDelete="CASCADE" /> + <addForeignKeyConstraint baseTableName="user_geofence" baseColumnNames="geofenceid" constraintName="fk_user_geofence_geofenceid" referencedTableName="geofences" referencedColumnNames="id" onDelete="CASCADE" /> + + <createTable tableName="group_geofence"> + <column name="groupid" type="INT"> + <constraints nullable="false" /> + </column> + <column name="geofenceid" type="INT"> + <constraints nullable="false" /> + </column> + </createTable> + + <addForeignKeyConstraint baseTableName="group_geofence" baseColumnNames="groupid" constraintName="fk_group_geofence_groupid" referencedTableName="groups" referencedColumnNames="id" onDelete="CASCADE" /> + <addForeignKeyConstraint baseTableName="group_geofence" baseColumnNames="geofenceid" constraintName="fk_group_geofence_geofenceid" referencedTableName="geofences" referencedColumnNames="id" onDelete="CASCADE" /> + + <createTable tableName="device_geofence"> + <column name="deviceid" type="INT"> + <constraints nullable="false" /> + </column> + <column name="geofenceid" type="INT"> + <constraints nullable="false" /> + </column> + </createTable> + + <addForeignKeyConstraint baseTableName="device_geofence" baseColumnNames="deviceid" constraintName="fk_user_device_geofence_deviceid" referencedTableName="devices" referencedColumnNames="id" onDelete="CASCADE" /> + <addForeignKeyConstraint baseTableName="device_geofence" baseColumnNames="geofenceid" constraintName="fk_user_device_geofence_geofenceid" referencedTableName="geofences" referencedColumnNames="id" onDelete="CASCADE" /> + </changeSet> </databaseChangeLog> |