Re: help with version checking

Поиск
Список
Период
Сортировка
От Arnau
Тема Re: help with version checking
Дата
Msg-id 45940B07.4010708@andromeiberica.com
обсуждение исходный текст
Ответ на Re: help with version checking  (Arnau <arnaulist@andromeiberica.com>)
Ответы Re: help with version checking  (Karsten Hilbert <Karsten.Hilbert@gmx.net>)
Список pgsql-sql
Arnau wrote:
> Tom Lane wrote:
>> Arnau <arnaulist@andromeiberica.com> writes:
>>>    I don't want, if it's possible, to create a function.
>>
>> Unlike Oracle, PG makes a strong distinction between SQL and
>> programmable languages (including plpgsql).  You can't write
>> plpgsql code without putting it into a function.
>>
>>             regards, tom lane
>>
> 
> I've tried Daniel's suggestion but the Raise doesn't terminate the 
> script execution, so if doesn't do what I need. Notice the Update 1
> 
> arebassa@beowulf:~$ psql -d dermagier -f upgrade_agenda.sql
> CREATE FUNCTION
> psql:upgrade_agenda.sql:16: ERROR:  This script needs Agenda version 
> 1.0.0.0, detected version 1.0.0.1
> UPDATE 1
> 
> 

I paste the script I have created:

CREATE OR REPLACE FUNCTION check_version() RETURNS void
AS '
DECLARE  v_version VARCHAR;

BEGIN  SELECT version INTO v_version FROM agenda_version WHERE id = 1;
  IF v_version <> ''1.0.0.0'' THEN    RAISE EXCEPTION ''This script needs Agenda version 1.0.0.0, 
detected version %'', v_version;  END IF;

END;
' LANGUAGE 'plpgsql';

SELECT check_version();

UPDATE agenda_version set version = '1.0.0.1' where id = 1;



-- 
Arnau


В списке pgsql-sql по дате отправления:

Предыдущее
От: Arnau
Дата:
Сообщение: Re: help with version checking
Следующее
От: Chris Dunworth
Дата:
Сообщение: Re: help with version checking