1
0

migration.psql 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. -- Переименование таблиц в нижний регистр (snake_case)
  2. ALTER TABLE "Customers" RENAME TO customers;
  3. ALTER TABLE "OU" RENAME TO ou;
  4. ALTER TABLE "User_auth" RENAME TO user_auth;
  5. ALTER TABLE "User_list" RENAME TO user_list;
  6. ALTER TABLE "User_stats" RENAME TO user_stats;
  7. ALTER TABLE "User_stats_full" RENAME TO user_stats_full;
  8. ALTER TABLE "User_auth_alias" RENAME TO user_auth_alias;
  9. ALTER TABLE "Wan_stats" RENAME TO wan_stats;
  10. ALTER TABLE "Traffic_detail" RENAME TO traffic_detail;
  11. ALTER TABLE "Unknown_mac" RENAME TO unknown_mac;
  12. ALTER TABLE "Group_filters" RENAME TO group_filters;
  13. ALTER TABLE "Group_list" RENAME TO group_list;
  14. ALTER TABLE "Filter_list" RENAME TO filter_list;
  15. ALTER TABLE "Queue_list" RENAME TO queue_list;
  16. -- wan_stats: in/out → bytes_in/bytes_out
  17. ALTER TABLE wan_stats RENAME COLUMN "in" TO bytes_in;
  18. ALTER TABLE wan_stats RENAME COLUMN "out" TO bytes_out;
  19. -- group_filters: order → rule_order
  20. ALTER TABLE group_filters RENAME COLUMN "order" TO rule_order;
  21. -- user_auth: client-id → client_id
  22. ALTER TABLE user_auth RENAME COLUMN "client-id" TO client_id;
  23. -- customers: Login to lower case
  24. ALTER TABLE customers RENAME COLUMN Login TO login;
  25. -- Переименовываем eof → end_life в user_auth
  26. ALTER TABLE user_auth RENAME COLUMN eof TO end_life;
  27. -- dhcp_log: дефисы → подчёркивания
  28. ALTER TABLE dhcp_log RENAME COLUMN "client-id" TO client_id;
  29. ALTER TABLE dhcp_log RENAME COLUMN "circuit-id" TO circuit_id;
  30. ALTER TABLE dhcp_log RENAME COLUMN "remote-id" TO remote_id;
  31. -- Точки в именах → подчёркивания
  32. ALTER TABLE acl RENAME COLUMN "description.english" TO description_english;
  33. ALTER TABLE acl RENAME COLUMN "description.russian" TO description_russian;
  34. ALTER TABLE config_options RENAME COLUMN "description.english" TO description_english;
  35. ALTER TABLE config_options RENAME COLUMN "description.russian" TO description_russian;
  36. ALTER TABLE device_types RENAME COLUMN "name.russian" TO name_russian;
  37. ALTER TABLE device_types RENAME COLUMN "name.english" TO name_english;
  38. -- timestamp → ts
  39. ALTER TABLE dhcp_log RENAME COLUMN timestamp TO ts;
  40. ALTER TABLE dhcp_queue RENAME COLUMN timestamp TO ts;
  41. ALTER TABLE dns_cache RENAME COLUMN timestamp TO ts;
  42. ALTER TABLE mac_history RENAME COLUMN timestamp TO ts;
  43. ALTER TABLE user_auth RENAME COLUMN timestamp TO ts;
  44. ALTER TABLE user_stats RENAME COLUMN timestamp TO ts;
  45. ALTER TABLE user_stats_full RENAME COLUMN timestamp TO ts;
  46. ALTER TABLE worklog RENAME COLUMN timestamp TO ts;
  47. ALTER TABLE user_list RENAME COLUMN timestamp TO ts;
  48. ALTER TABLE traffic_detail RENAME COLUMN timestamp TO ts;
  49. ALTER TABLE unknown_mac RENAME COLUMN timestamp TO ts;
  50. ALTER TABLE user_auth_alias RENAME COLUMN timestamp TO ts;
  51. -- time/date → ts
  52. ALTER TABLE wan_stats RENAME COLUMN time TO ts;
  53. ALTER TABLE remote_syslog RENAME COLUMN date TO ts;
  54. -- comment → description (во всех таблицах)
  55. ALTER TABLE acl RENAME COLUMN comment TO description;
  56. ALTER TABLE building RENAME COLUMN comment TO description;
  57. ALTER TABLE devices RENAME COLUMN comment TO description;
  58. ALTER TABLE filter_instances RENAME COLUMN comment TO description;
  59. ALTER TABLE filter_list RENAME COLUMN comment TO description;
  60. ALTER TABLE group_list RENAME COLUMN comment TO description;
  61. ALTER TABLE ou RENAME COLUMN comment TO description;
  62. ALTER TABLE subnets RENAME COLUMN comment TO description;
  63. ALTER TABLE user_auth RENAME COLUMN comments TO description;
  64. ALTER TABLE user_list RENAME COLUMN comment TO description;
  65. ALTER TABLE vendors RENAME COLUMN comment TO description;
  66. -- Добавляем поле mac_found в user_auth (аналог arp_found)
  67. ALTER TABLE user_auth ADD COLUMN mac_found TIMESTAMP;
  68. -- type → уточнённые имена
  69. ALTER TABLE config_options RENAME COLUMN type TO option_type;
  70. ALTER TABLE dns_queue RENAME COLUMN type TO operation_type;
  71. ALTER TABLE filter_list RENAME COLUMN type TO filter_type;
  72. UPDATE user_auth SET mac_found = last_found WHERE last_found IS NOT NULL;
  73. -- user_stats - set default value 0
  74. ALTER TABLE user_stats ADD COLUMN pkt_in integer NOT NULL DEFAULT 0;
  75. ALTER TABLE user_stats ADD COLUMN pkt_out integer NOT NULL DEFAULT 0;
  76. ALTER TABLE user_stats ADD COLUMN step integer NOT NULL DEFAULT 3600;
  77. -- Сначала обновите NULL-значения на 0 (если они есть)
  78. UPDATE user_stats_full SET pkt_in = 0 WHERE pkt_in IS NULL;
  79. UPDATE user_stats_full SET pkt_out = 0 WHERE pkt_out IS NULL;
  80. -- Затем измените столбцы
  81. ALTER TABLE user_stats_full ALTER COLUMN pkt_in SET NOT NULL;
  82. ALTER TABLE user_stats_full ALTER COLUMN pkt_in SET DEFAULT 0;
  83. ALTER TABLE user_stats_full ALTER COLUMN pkt_out SET NOT NULL;
  84. ALTER TABLE user_stats_full ALTER COLUMN pkt_out SET DEFAULT 0;