diff options
Diffstat (limited to 'sql')
-rw-r--r-- | sql/base/characters_database.sql | 4 | ||||
-rw-r--r-- | sql/updates/characters/master/2024_04_12_00_characters.sql | 9 |
2 files changed, 12 insertions, 1 deletions
diff --git a/sql/base/characters_database.sql b/sql/base/characters_database.sql index 4bd698adac4..ca06f8a717f 100644 --- a/sql/base/characters_database.sql +++ b/sql/base/characters_database.sql @@ -2705,6 +2705,7 @@ CREATE TABLE `item_instance` ( `randomBonusListId` int unsigned NOT NULL DEFAULT '0', `durability` smallint unsigned NOT NULL DEFAULT '0', `playedTime` int unsigned NOT NULL DEFAULT '0', + `createTime` bigint NOT NULL DEFAULT '0', `text` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, `battlePetSpeciesId` int unsigned NOT NULL DEFAULT '0', `battlePetBreedData` int unsigned NOT NULL DEFAULT '0', @@ -3723,7 +3724,8 @@ INSERT INTO `updates` VALUES ('2023_11_09_00_characters.sql','1A3D7CA6890353DA55793FE8D925CC8C54965A69','ARCHIVED','2023-11-09 00:56:31',0), ('2023_11_15_00_characters.sql','441E0F17DE3E3945307AC400DF86FCDF06C61653','ARCHIVED','2023-11-15 00:53:47',0), ('2024_02_08_00_characters.sql','743A11042AA17CDBD5F3D510D24509A10838DB5A','ARCHIVED','2024-02-08 00:56:26',0), -('2024_04_09_00_characters.sql','07AC79B4E489B1CD073852EC57D12939C2A1D4B1','RELEASED','2024-04-09 12:54:11',0); +('2024_04_09_00_characters.sql','07AC79B4E489B1CD073852EC57D12939C2A1D4B1','RELEASED','2024-04-09 12:54:11',0), +('2024_04_12_00_characters.sql','043E023F998DA77170C9D2D0162CAA340290B215','RELEASED','2024-04-12 00:23:51',0); /*!40000 ALTER TABLE `updates` ENABLE KEYS */; UNLOCK TABLES; diff --git a/sql/updates/characters/master/2024_04_12_00_characters.sql b/sql/updates/characters/master/2024_04_12_00_characters.sql new file mode 100644 index 00000000000..a26b60bb3c1 --- /dev/null +++ b/sql/updates/characters/master/2024_04_12_00_characters.sql @@ -0,0 +1,9 @@ +ALTER TABLE `item_instance` ADD `createTime` bigint NOT NULL DEFAULT '0' AFTER `playedTime`; + +UPDATE `item_instance` SET `createTime` = COALESCE( + (SELECT LEAST(c.`logout_time`, GREATEST(c.`createTime`, c.`logout_time` - + ((c.`totaltime`-`playedTime`) + / GREATEST(c.`totaltime`, 1) + * (c.`logout_time`-c.`createTime`)))) FROM `characters` c WHERE c.`guid`=`owner_guid`), + UNIX_TIMESTAMP() +); |