Skip to content
Snippets Groups Projects

External String IDs

4 files
+ 50
46
Compare changes
  • Side-by-side
  • Inline

Files

@@ -6,6 +6,8 @@ DROP PROCEDURE IF EXISTS getInfo;
@@ -6,6 +6,8 @@ DROP PROCEDURE IF EXISTS getInfo;
DROP PROCEDURE IF EXISTS getRole;
DROP PROCEDURE IF EXISTS getRole;
DROP PROCEDURE IF EXISTS setPassword;
DROP PROCEDURE IF EXISTS setPassword;
DROP PROCEDURE IF EXISTS initAutoIncrement;
DROP PROCEDURE IF EXISTS initAutoIncrement;
 
DELETE FROM name_data WHERE entity_id=50;
 
DELETE FROM entities WHERE id=50;
DELETE FROM entities WHERE id=99;
DELETE FROM entities WHERE id=99;
@@ -16,13 +18,13 @@ CREATE TABLE `entity_ids` (
@@ -16,13 +18,13 @@ CREATE TABLE `entity_ids` (
`internal_id` int(10) unsigned NOT NULL COMMENT 'Internal ID of an entity. This id is used internally in the *_data tables and elsewhere. This ID is never exposed via the CaosDB API.',
`internal_id` int(10) unsigned NOT NULL COMMENT 'Internal ID of an entity. This id is used internally in the *_data tables and elsewhere. This ID is never exposed via the CaosDB API.',
PRIMARY KEY `entity_ids_pk` (`id`),
PRIMARY KEY `entity_ids_pk` (`id`),
CONSTRAINT `entity_ids_internal_id` FOREIGN KEY (`internal_id`) REFERENCES `entities` (`id`)
CONSTRAINT `entity_ids_internal_id` FOREIGN KEY (`internal_id`) REFERENCES `entities` (`id`)
) ENGINE=InnoDB;
) ENGINE=InnoDB COLLATE utf8mb4_bin;
-- fill all existing entities into the new entity_ids table.
-- fill all existing entities into the new entity_ids table.
INSERT INTO entity_ids (id, internal_id) SELECT id, id FROM entities WHERE id>0 AND role!="DOMAIN" AND id!=50;
INSERT INTO entity_ids (id, internal_id) SELECT id, id FROM entities WHERE id>0 AND role!="DOMAIN";
ALTER TABLE transaction_log MODIFY COLUMN `entity_id` VARCHAR(255) NOT NULL;
ALTER TABLE transaction_log MODIFY COLUMN `entity_id` VARCHAR(255) COLLATE utf8mb4_bin NOT NULL;
ALTER TABLE user_info DROP CONSTRAINT `subjects_ibfk_1`;
ALTER TABLE user_info DROP CONSTRAINT `subjects_ibfk_1`;
ALTER TABle user_info MODIFY COLUMN `entity` VARCHAR(255) DEFAULT NULL;
ALTER TABle user_info MODIFY COLUMN `entity` VARCHAR(255) COLLATE utf8mb4_bin DEFAULT NULL;
ALTER TABLE user_info ADD CONSTRAINT `subjects_ibfk_2` FOREIGN KEY (`entity`) REFERENCES `entity_ids` (`id`);
ALTER TABLE user_info ADD CONSTRAINT `subjects_ibfk_2` FOREIGN KEY (`entity`) REFERENCES `entity_ids` (`id`);
Loading