diff options
author | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-04-13 12:32:22 +0200 |
---|---|---|
committer | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-08-26 22:56:45 +0200 |
commit | 9ff69160ea1c3c64ea7012cd70a3b50ff4373264 (patch) | |
tree | 05b11f2a1eb323c1809267a0a8fc08b5e2f279ac /src/sql | |
parent | f162b9780fad3de2b5d85fbfceb6e4d4e22a2bfd (diff) | |
download | manaserv-9ff69160ea1c3c64ea7012cd70a3b50ff4373264.tar.gz manaserv-9ff69160ea1c3c64ea7012cd70a3b50ff4373264.tar.bz2 manaserv-9ff69160ea1c3c64ea7012cd70a3b50ff4373264.tar.xz manaserv-9ff69160ea1c3c64ea7012cd70a3b50ff4373264.zip |
[Abilities] Renamed specials to abilities
Diffstat (limited to 'src/sql')
-rw-r--r-- | src/sql/mysql/createTables.sql | 14 | ||||
-rw-r--r-- | src/sql/mysql/updates/update_21_to_22.sql | 26 | ||||
-rw-r--r-- | src/sql/sqlite/createTables.sql | 14 | ||||
-rw-r--r-- | src/sql/sqlite/updates/update_21_to_22.sql | 26 |
4 files changed, 66 insertions, 14 deletions
diff --git a/src/sql/mysql/createTables.sql b/src/sql/mysql/createTables.sql index c47cbd1e..212d4812 100644 --- a/src/sql/mysql/createTables.sql +++ b/src/sql/mysql/createTables.sql @@ -113,14 +113,14 @@ CREATE TABLE IF NOT EXISTS `mana_char_kill_stats` ) ENGINE=InnoDB DEFAULT CHARSET=utf8; --- Create table 'mana_char_specials' +-- Create table 'mana_char_abilities' -CREATE TABLE mana_char_specials +CREATE TABLE mana_char_abilities ( - `char_id` int(10) unsigned NOT NULL, - `special_id` int(10) unsigned NOT NULL, - `special_current_mana` int(10) unsigned NOT NULL, - PRIMARY KEY (`char_id`, `special_id`), + `char_id` int(10) unsigned NOT NULL, + `ability_id` int(10) unsigned NOT NULL, + `ability_current_points` int(10) unsigned NOT NULL, + PRIMARY KEY (`char_id`, `ability_id`), FOREIGN KEY (`char_id`) REFERENCES `mana_characters` (`id`) ON DELETE CASCADE @@ -438,7 +438,7 @@ AUTO_INCREMENT=0 ; INSERT INTO mana_world_states VALUES('accountserver_startup',-1,'0', NOW()); INSERT INTO mana_world_states VALUES('accountserver_version',-1,'0', NOW()); -INSERT INTO mana_world_states VALUES('database_version', -1,'21', NOW()); +INSERT INTO mana_world_states VALUES('database_version', -1,'22', NOW()); -- all known transaction codes diff --git a/src/sql/mysql/updates/update_21_to_22.sql b/src/sql/mysql/updates/update_21_to_22.sql new file mode 100644 index 00000000..88c6f8c2 --- /dev/null +++ b/src/sql/mysql/updates/update_21_to_22.sql @@ -0,0 +1,26 @@ +START TRANSACTION; + +CREATE TABLE mana_char_abilities +( + `char_id` int(10) unsigned NOT NULL, + `ability_id` int(10) unsigned NOT NULL, + `ability_current_points` int(10) unsigned NOT NULL, + PRIMARY KEY (`char_id`, `ability_id`), + FOREIGN KEY (`char_id`) + REFERENCES `mana_characters` (`id`) + ON DELETE CASCADE +) ENGINE=InnoDB +DEFAULT CHARSET=utf8; + +INSERT INTO mana_char_abilities (char_id, ability_id, ability_current_points) + SELECT char_id, special_id, special_current_mana FROM mana_char_specials; + +DROP TABLE mana_char_specials; + +-- Update database version. +UPDATE mana_world_states + SET value = '22', + moddate = UNIX_TIMESTAMP() + WHERE state_name = 'database_version'; + +COMMIT; diff --git a/src/sql/sqlite/createTables.sql b/src/sql/sqlite/createTables.sql index d845e842..aaf18efc 100644 --- a/src/sql/sqlite/createTables.sql +++ b/src/sql/sqlite/createTables.sql @@ -120,16 +120,16 @@ CREATE INDEX mana_char_kill_stats_char on mana_char_kill_stats ( char_id ); ----------------------------------------------------------------------------- -CREATE TABLE mana_char_specials +CREATE TABLE mana_char_abilities ( - char_id INTEGER NOT NULL, - special_id INTEGER NOT NULL, - special_current_mana INTEGER NOT NULL, - PRIMARY KEY (char_id, special_id), + char_id INTEGER NOT NULL, + ability_id INTEGER NOT NULL, + ability_current_points INTEGER NOT NULL, + PRIMARY KEY (char_id, ability_id), FOREIGN KEY (char_id) REFERENCES mana_characters(id) ); -CREATE INDEX mana_char_specials_char on mana_char_specials ( char_id ); +CREATE INDEX mana_char_abilities_char on mana_char_abilities ( char_id ); ----------------------------------------------------------------------------- @@ -424,7 +424,7 @@ AS INSERT INTO mana_world_states VALUES('accountserver_startup',-1,'0', strftime('%s','now')); INSERT INTO mana_world_states VALUES('accountserver_version',-1,'0', strftime('%s','now')); -INSERT INTO mana_world_states VALUES('database_version', -1,'21', strftime('%s','now')); +INSERT INTO mana_world_states VALUES('database_version', -1,'22', strftime('%s','now')); -- all known transaction codes diff --git a/src/sql/sqlite/updates/update_21_to_22.sql b/src/sql/sqlite/updates/update_21_to_22.sql new file mode 100644 index 00000000..dbe6cb07 --- /dev/null +++ b/src/sql/sqlite/updates/update_21_to_22.sql @@ -0,0 +1,26 @@ +BEGIN; + +CREATE TABLE mana_char_abilities +( + char_id INTEGER NOT NULL, + ability_id INTEGER NOT NULL, + ability_current_points INTEGER NOT NULL, + PRIMARY KEY (char_id, ability_id), + FOREIGN KEY (char_id) REFERENCES mana_characters(id) +); + +CREATE INDEX mana_char_abilities_char on mana_char_abilities ( char_id ); + +INSERT INTO mana_char_abilities (char_id, ability_id, ability_current_points) + SELECT char_id, special_id, special_current_mana FROM mana_char_specials; + +DROP TABLE mana_char_specials; + + +-- Update the database version, and set date of update +UPDATE mana_world_states + SET value = '22', + moddate = strftime('%s','now') + WHERE state_name = 'database_version'; + +END; |