diff options
Diffstat (limited to 'app/SQL/install.sql.pgsql.php')
| -rw-r--r-- | app/SQL/install.sql.pgsql.php | 67 |
1 files changed, 39 insertions, 28 deletions
diff --git a/app/SQL/install.sql.pgsql.php b/app/SQL/install.sql.pgsql.php index ad14a37a0..5ea59b828 100644 --- a/app/SQL/install.sql.pgsql.php +++ b/app/SQL/install.sql.pgsql.php @@ -103,32 +103,43 @@ DROP TABLE IF EXISTS `_entrytag`, `_tag`, `_entrytmp`, `_entry`, `_feed`, `_cate SQL; $GLOBALS['SQL_UPDATE_MINOR'] = <<<'SQL' -ALTER TABLE `_category` - ALTER COLUMN "name" SET DATA TYPE VARCHAR(191); -ALTER TABLE `_feed` - DROP CONSTRAINT IF EXISTS `_feed_url_key`, - ALTER COLUMN "url" SET DATA TYPE VARCHAR(32768), - ALTER COLUMN "name" SET DATA TYPE VARCHAR(191), - ALTER COLUMN "website" SET DATA TYPE VARCHAR(32768), - ALTER COLUMN "lastUpdate" SET DATA TYPE BIGINT, - ALTER COLUMN "pathEntries" SET DATA TYPE VARCHAR(4096), - ALTER COLUMN "httpAuth" SET DATA TYPE VARCHAR(1024); -ALTER TABLE `_entry` - ALTER COLUMN "date" SET DATA TYPE BIGINT, - ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT, - ALTER COLUMN "guid" SET DATA TYPE VARCHAR(767), - ALTER COLUMN "title" SET DATA TYPE VARCHAR(8192), - ALTER COLUMN "author" SET DATA TYPE VARCHAR(1024), - ALTER COLUMN "link" SET DATA TYPE VARCHAR(16383), - ALTER COLUMN "tags" SET DATA TYPE VARCHAR(2048); -ALTER TABLE `_entrytmp` - ALTER COLUMN "date" SET DATA TYPE BIGINT, - ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT, - ALTER COLUMN "guid" SET DATA TYPE VARCHAR(767), - ALTER COLUMN "title" SET DATA TYPE VARCHAR(8192), - ALTER COLUMN "author" SET DATA TYPE VARCHAR(1024), - ALTER COLUMN "link" SET DATA TYPE VARCHAR(16383), - ALTER COLUMN "tags" SET DATA TYPE VARCHAR(2048); -ALTER TABLE `_tag` - ALTER COLUMN "name" SET DATA TYPE VARCHAR(191); +DO $$ +BEGIN + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_schema = 'public' + AND table_name = REPLACE('`_tag`', '"', '') + AND column_name = 'name' + AND character_maximum_length = 191 + ) THEN + ALTER TABLE `_category` + ALTER COLUMN "name" SET DATA TYPE VARCHAR(191); + ALTER TABLE `_feed` + DROP CONSTRAINT IF EXISTS `_feed_url_key`, + ALTER COLUMN "url" SET DATA TYPE VARCHAR(32768), + ALTER COLUMN "name" SET DATA TYPE VARCHAR(191), + ALTER COLUMN "website" SET DATA TYPE VARCHAR(32768), + ALTER COLUMN "lastUpdate" SET DATA TYPE BIGINT, + ALTER COLUMN "pathEntries" SET DATA TYPE VARCHAR(4096), + ALTER COLUMN "httpAuth" SET DATA TYPE VARCHAR(1024); + ALTER TABLE `_entry` + ALTER COLUMN "date" SET DATA TYPE BIGINT, + ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT, + ALTER COLUMN "guid" SET DATA TYPE VARCHAR(767), + ALTER COLUMN "title" SET DATA TYPE VARCHAR(8192), + ALTER COLUMN "author" SET DATA TYPE VARCHAR(1024), + ALTER COLUMN "link" SET DATA TYPE VARCHAR(16383), + ALTER COLUMN "tags" SET DATA TYPE VARCHAR(2048); + ALTER TABLE `_entrytmp` + ALTER COLUMN "date" SET DATA TYPE BIGINT, + ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT, + ALTER COLUMN "guid" SET DATA TYPE VARCHAR(767), + ALTER COLUMN "title" SET DATA TYPE VARCHAR(8192), + ALTER COLUMN "author" SET DATA TYPE VARCHAR(1024), + ALTER COLUMN "link" SET DATA TYPE VARCHAR(16383), + ALTER COLUMN "tags" SET DATA TYPE VARCHAR(2048); + ALTER TABLE `_tag` + ALTER COLUMN "name" SET DATA TYPE VARCHAR(191); + END IF; +END $$; SQL; |
