wvp-GB28181-pro/数据库/2.7.4/更新-mysql-2.7.4.sql
2026-04-17 11:25:21 +08:00

210 lines
8.2 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

drop table IF EXISTS wvp_jt_terminal;
create table IF NOT EXISTS wvp_jt_terminal (
id serial primary key,
phone_number character varying(50),
terminal_id character varying(50),
province_id character varying(50),
province_text character varying(100),
city_id character varying(50),
city_text character varying(100),
maker_id character varying(50),
model character varying(50),
plate_color character varying(50),
plate_no character varying(50),
longitude double precision,
latitude double precision,
status bool default false,
register_time character varying(50) default null,
update_time character varying(50) not null,
create_time character varying(50) not null,
geo_coord_sys character varying(50),
media_server_id character varying(50) default 'auto',
sdp_ip character varying(50),
constraint uk_jt_device_id_device_id unique (id, phone_number)
);
drop table IF EXISTS wvp_jt_channel;
create table IF NOT EXISTS wvp_jt_channel (
id serial primary key,
terminal_db_id integer,
channel_id integer,
has_audio bool default false,
name character varying(255),
update_time character varying(50) not null,
create_time character varying(50) not null,
constraint uk_jt_channel_id_device_id unique (terminal_db_id, channel_id)
);
/*
* 20250708
*/
DELIMITER // -- 重定义分隔符避免分号冲突
CREATE PROCEDURE `wvp_20250708`()
BEGIN
IF NOT EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_media_server' and column_name = 'jtt_proxy_port')
THEN
ALTER TABLE wvp_media_server ADD jtt_proxy_port integer;
END IF;
END; //
call wvp_20250708();
DROP PROCEDURE wvp_20250708;
DELIMITER ;
/*
* 20250917
*/
DELIMITER // -- 重定义分隔符避免分号冲突
CREATE PROCEDURE `wvp_20250917`()
BEGIN
IF NOT EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_media_server' and column_name = 'mp4_port')
THEN
ALTER TABLE wvp_media_server ADD mp4_port integer;
END IF;
IF NOT EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_media_server' and column_name = 'mp4_ssl_port')
THEN
ALTER TABLE wvp_media_server ADD mp4_ssl_port integer;
END IF;
END; //
call wvp_20250917();
DROP PROCEDURE wvp_20250917;
DELIMITER ;
/*
* 20250924
*/
DELIMITER // -- 重定义分隔符避免分号冲突
CREATE PROCEDURE `wvp_20250924`()
BEGIN
IF NOT EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_channel' and column_name = 'enable_broadcast')
THEN
ALTER TABLE wvp_device_channel ADD enable_broadcast integer default 0;
END IF;
IF NOT EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_channel' and column_name = 'map_level')
THEN
ALTER TABLE wvp_device_channel ADD map_level integer default 0;
END IF;
IF NOT EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_common_group' and column_name = 'alias')
THEN
ALTER TABLE wvp_common_group ADD alias varchar(255) default null;
END IF;
END; //
call wvp_20250924();
DROP PROCEDURE wvp_20250924;
DELIMITER ;
/*
* 20251027
*/
DELIMITER // -- 重定义分隔符避免分号冲突
CREATE PROCEDURE `wvp_20251027`()
BEGIN
IF EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_stream_proxy' and column_name = 'enable_remove_none_reader')
THEN
ALTER TABLE wvp_stream_proxy DROP enable_remove_none_reader;
END IF;
END; //
call wvp_20251027();
DROP PROCEDURE wvp_20251027;
DELIMITER ;
drop index uk_media_server_unique_ip_http_port on wvp_media_server;
/*
* 202601025
*/
DELIMITER // -- 重定义分隔符避免分号冲突
CREATE PROCEDURE `wvp_202601025`()
BEGIN
IF EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device' and column_name = 'register_time')
THEN
ALTER TABLE wvp_device DROP register_time;
END IF;
IF EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device' and column_name = 'keepalive_time')
THEN
ALTER TABLE wvp_device DROP keepalive_time;
END IF;
END; //
call wvp_202601025();
DROP PROCEDURE wvp_202601025;
DELIMITER ;
drop table IF EXISTS wvp_alarm;
create table IF NOT EXISTS wvp_alarm (
id serial primary key COMMENT '主键ID',
channel_id integer COMMENT '关联通道的数据库id',
description character varying(255) COMMENT '报警描述',
snap_path character varying(255) COMMENT '报警快照路径',
record_path character varying(255) COMMENT '报警录像路径',
longitude double precision COMMENT '报警附带的经度',
latitude double precision COMMENT '报警附带的纬度',
alarm_type integer COMMENT '报警类别',
alarm_time bigint COMMENT '报警时间'
);
/*
* 20260417 将wvp_device_mobile_position从专属国标的位置记录表改为通用通道共用的位置记录表
*/
DELIMITER // -- 重定义分隔符避免分号冲突
CREATE PROCEDURE `wvp_20260417`()
BEGIN
IF NOT EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_mobile_position' and column_name = 'timestamp')
THEN
ALTER TABLE wvp_device_mobile_position ADD timestamp BIGINT COMMENT '上报时间';
END IF;
IF EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_mobile_position' and column_name = 'time')
THEN
UPDATE wvp_device_mobile_position SET timestamp = UNIX_TIMESTAMP(time) * 1000;
ALTER TABLE wvp_device_mobile_position DROP time;
END IF;
IF EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_mobile_position' and column_name = 'device_id')
THEN
ALTER TABLE wvp_device_mobile_position DROP device_id;
END IF;
IF EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_mobile_position' and column_name = 'device_name')
THEN
ALTER TABLE wvp_device_mobile_position DROP device_name;
END IF;
IF EXISTS (SELECT column_name FROM information_schema.columns
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_mobile_position' and column_name = 'report_source')
THEN
ALTER TABLE wvp_device_mobile_position DROP report_source;
END IF;
-- 修改表名
IF EXISTS (SELECT table_name FROM information_schema.tables
WHERE TABLE_SCHEMA = (SELECT DATABASE()) and table_name = 'wvp_device_mobile_position')
THEN
ALTER TABLE wvp_device_mobile_position RENAME TO wvp_mobile_position;
END IF;
END; //
call wvp_20260417();
DROP PROCEDURE wvp_20260417;
DELIMITER ;