102 lines
3.0 KiB
SQL
102 lines
3.0 KiB
SQL
--
|
|
-- This updates a 1.29.0 database to 1.30.0
|
|
--
|
|
SELECT 'Checking for SaveJPEGs in Monitors';
|
|
SET @s = (SELECT IF(
|
|
(SELECT COUNT(*)
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE table_name = 'Monitors'
|
|
AND table_schema = DATABASE()
|
|
AND column_name = 'SaveJPEGs'
|
|
) > 0,
|
|
"SELECT 'Column SaveJPEGs exists in Monitors'",
|
|
"ALTER TABLE `Monitors` ADD `SaveJPEGs` TINYINT NOT NULL DEFAULT '3' AFTER `Deinterlacing`"
|
|
));
|
|
|
|
PREPARE stmt FROM @s;
|
|
EXECUTE stmt;
|
|
|
|
SELECT 'Checking for VideoWriter in Monitors';
|
|
SET @s = (SELECT IF(
|
|
(SELECT COUNT(*)
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE table_name = 'Monitors'
|
|
AND table_schema = DATABASE()
|
|
AND column_name = 'VideoWriter'
|
|
) > 0,
|
|
"SELECT 'Column VideoWriter exists in Monitors'",
|
|
"ALTER TABLE `Monitors` ADD `VideoWriter` TINYINT NOT NULL DEFAULT '0' AFTER `SaveJPEGs`"
|
|
));
|
|
|
|
PREPARE stmt FROM @s;
|
|
EXECUTE stmt;
|
|
|
|
SELECT 'Checking for EncoderParameters in Monitors';
|
|
SET @s = (SELECT IF(
|
|
(SELECT COUNT(*)
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE table_name = 'Monitors'
|
|
AND table_schema = DATABASE()
|
|
AND column_name = 'EncoderParameters'
|
|
) > 0,
|
|
"SELECT 'Column EncoderParameters exists in Monitors'",
|
|
"ALTER TABLE `Monitors` ADD `EncoderParameters` TEXT NOT NULL AFTER `VideoWriter`"
|
|
));
|
|
|
|
PREPARE stmt FROM @s;
|
|
EXECUTE stmt;
|
|
|
|
SELECT 'Checking for DefaultVideo in Events';
|
|
SET @s = (SELECT IF(
|
|
(SELECT COUNT(*)
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE table_name = 'Events'
|
|
AND table_schema = DATABASE()
|
|
AND column_name = 'DefaultVideo'
|
|
) > 0,
|
|
"SELECT 'Column DefaultVideo exists in Events'",
|
|
"ALTER TABLE `Events` ADD `DefaultVideo` VARCHAR( 64 ) NOT NULL default '' AFTER `AlarmFrames`"
|
|
));
|
|
|
|
PREPARE stmt FROM @s;
|
|
EXECUTE stmt;
|
|
|
|
SELECT 'Checking for RecordAudio in Monitors';
|
|
SET @s = (SELECT IF(
|
|
(SELECT COUNT(*)
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE table_name = 'Monitors'
|
|
AND table_schema = DATABASE()
|
|
AND column_name = 'RecordAudio'
|
|
) > 0,
|
|
"SELECT 'Column RecordAudio exists in Monitors'",
|
|
"ALTER TABLE `Monitors` ADD `RecordAudio` TINYINT NOT NULL DEFAULT '0' AFTER `EncoderParameters`"
|
|
));
|
|
|
|
PREPARE stmt FROM @s;
|
|
EXECUTE stmt;
|
|
|
|
--
|
|
-- The following alters various columns to allow NULLs
|
|
--
|
|
|
|
ALTER TABLE Monitors MODIFY Host varchar(64);
|
|
ALTER TABLE Monitors MODIFY LabelFormat varchar(64);
|
|
ALTER TABLE Monitors MODIFY LinkedMonitors varchar(255);
|
|
ALTER TABLE Monitors MODIFY Options varchar(255);
|
|
ALTER TABLE Monitors MODIFY Protocol varchar(16);
|
|
ALTER TABLE Monitors MODIFY User varchar(64);
|
|
ALTER TABLE Monitors MODIFY Pass varchar(64);
|
|
ALTER TABLE Monitors MODIFY RTSPDescribe tinyint(1) unsigned;
|
|
ALTER TABLE Monitors MODIFY ControlId int(10) unsigned;
|
|
ALTER TABLE Monitors MODIFY TrackDelay smallint(5) unsigned;
|
|
ALTER TABLE Monitors MODIFY ReturnDelay smallint(5) unsigned;
|
|
ALTER TABLE Monitors MODIFY EncoderParameters TEXT;
|
|
ALTER TABLE Monitors MODIFY Path varchar(255);
|
|
ALTER TABLE Monitors MODIFY V4LMultiBuffer tinyint(1) unsigned;
|
|
|
|
ALTER TABLE Users MODIFY MonitorIds tinytext;
|
|
ALTER TABLE Users MODIFY Language varchar(8);
|
|
ALTER TABLE Users MODIFY MaxBandwidth varchar(16);
|
|
|