diff --git a/sql/database-create.sql b/sql/database-create.sql index 0e6ce812800b332d8ecfa188b3b1a024921bb61d..638946772cb981a55bb160487c7da15a007984ee 100644 --- a/sql/database-create.sql +++ b/sql/database-create.sql @@ -766,8 +766,8 @@ CREATE TABLE linkdelays ( CREATE TABLE location_info ( node_id varchar(32) NOT NULL default '', - floor varchar(32) default NULL, - building varchar(32) default NULL, + floor varchar(32) NOT NULL default '', + building varchar(32) NOT NULL default '', loc_x int(10) unsigned NOT NULL default '0', loc_y int(10) unsigned NOT NULL default '0', loc_z float default NULL, @@ -776,7 +776,7 @@ CREATE TABLE location_info ( phone tinytext, room varchar(32) default NULL, stamp int(10) unsigned default NULL, - PRIMARY KEY (node_id) + PRIMARY KEY (node_id,building,floor) ) TYPE=MyISAM; -- diff --git a/sql/database-migrate.txt b/sql/database-migrate.txt index dcee3a669a56458cd0fa34fa5a731d727dfffc59..cdcb4d612d1c7774b55048aa76fcef64725be335 100644 --- a/sql/database-migrate.txt +++ b/sql/database-migrate.txt @@ -2598,3 +2598,13 @@ last_net_act,last_cpu_act,last_ext_act); used to set an ID for the programmed mote. alter table virt_nodes add column numeric_id int default NULL; + +1.331: Change location_info to include building and floor in the + primary key. + + alter table location_info change floor floor varchar(32) \ + NOT NULL default ''; + alter table location_info change building building varchar(32) \ + NOT NULL default ''; + alter table location_info drop primary key; + alter table location_info add primary key(node_id,building,floor);