Browse Source

the mac MACADDR field type has been changed to mac VARCHAR(17) for postgres (to maintain compatibility of data processing with mysql)

Roman Dmitriev 2 months ago
parent
commit
eed7ae2bbc

+ 1 - 1
docs/databases/postgres/en/create_db.sql

@@ -472,7 +472,7 @@ dns_ptr_only SMALLINT NOT NULL DEFAULT 0,
 wikiname VARCHAR(250),
 dhcp_acl TEXT,
 queue_id INTEGER NOT NULL DEFAULT 0,
-mac MACADDR,
+mac VARCHAR(17),
 dhcp_action VARCHAR(10) NOT NULL DEFAULT '',
 dhcp_option_set VARCHAR(50),
 dhcp_time TIMESTAMP,

+ 1 - 1
docs/databases/postgres/ru/create_db.sql

@@ -473,7 +473,7 @@ dns_ptr_only SMALLINT NOT NULL DEFAULT 0,
 wikiname VARCHAR(250),
 dhcp_acl TEXT,
 queue_id INTEGER NOT NULL DEFAULT 0,
-mac MACADDR,
+mac VARCHAR(17),
 dhcp_action VARCHAR(10) NOT NULL DEFAULT '',
 dhcp_option_set VARCHAR(50),
 dhcp_time TIMESTAMP,

+ 11 - 0
scripts/updates/3-0-5/user_auth.psql

@@ -0,0 +1,11 @@
+-- Временная колонка
+ALTER TABLE user_auth ADD COLUMN mac_text VARCHAR(17);
+
+-- Копируем данные
+UPDATE user_auth SET mac_text = mac::TEXT WHERE mac IS NOT NULL;
+
+-- Удаляем старую колонку
+ALTER TABLE user_auth DROP COLUMN mac;
+
+-- Переименовываем
+ALTER TABLE user_auth RENAME COLUMN mac_text TO mac;