modify return value
This commit is contained in:
@ -1,4 +1,4 @@
|
|||||||
CREATE OR REPLACE FUNCTION public.insert_url(in_url text) RETURNS integer
|
CREATE OR REPLACE FUNCTION public.insert_url(in_url text) RETURNS TABLE (out_url text, out_website_name text)
|
||||||
LANGUAGE plpgsql STRICT
|
LANGUAGE plpgsql STRICT
|
||||||
AS $$
|
AS $$
|
||||||
DECLARE
|
DECLARE
|
||||||
@ -8,7 +8,7 @@ BEGIN
|
|||||||
WHERE aw.url = in_url;
|
WHERE aw.url = in_url;
|
||||||
|
|
||||||
IF FOUND THEN
|
IF FOUND THEN
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
INSERT INTO artist_website (url) VALUES (in_url);
|
INSERT INTO artist_website (url) VALUES (in_url);
|
||||||
@ -16,21 +16,23 @@ BEGIN
|
|||||||
SELECT * INTO ret_value FROM set_artist_name(in_url);
|
SELECT * INTO ret_value FROM set_artist_name(in_url);
|
||||||
IF ret_value <> 0 THEN
|
IF ret_value <> 0 THEN
|
||||||
DELETE FROM artist_website WHERE url = in_url;
|
DELETE FROM artist_website WHERE url = in_url;
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
SELECT * INTO ret_value FROM set_website_name(in_url);
|
SELECT * INTO ret_value FROM set_website_name(in_url);
|
||||||
IF ret_value <> 0 THEN
|
IF ret_value <> 0 THEN
|
||||||
DELETE FROM artist_website WHERE url = in_url;
|
DELETE FROM artist_website WHERE url = in_url;
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
SELECT * INTO ret_value FROM set_folder_path(in_url);
|
SELECT * INTO ret_value FROM set_folder_path(in_url);
|
||||||
IF ret_value <> 0 THEN
|
IF ret_value <> 0 THEN
|
||||||
DELETE FROM artist_website WHERE url = in_url;
|
DELETE FROM artist_website WHERE url = in_url;
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
RETURN 0;
|
RETURN QUERY SELECT aw.url, aw.folder_path
|
||||||
|
FROM artist_website aw
|
||||||
|
WHERE aw.url ILIKE in_url;
|
||||||
END;
|
END;
|
||||||
$$;
|
$$;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
CREATE OR REPLACE FUNCTION public.insert_url_with_custom_artist(in_url text, in_artist_name text) RETURNS integer
|
CREATE OR REPLACE FUNCTION public.insert_url_with_custom_artist(in_url text, in_artist_name text) RETURNS TABLE (out_url text, out_website_name text)
|
||||||
LANGUAGE plpgsql STRICT
|
LANGUAGE plpgsql STRICT
|
||||||
AS $$
|
AS $$
|
||||||
DECLARE
|
DECLARE
|
||||||
@ -9,14 +9,14 @@ BEGIN
|
|||||||
WHERE aw.url = in_url;
|
WHERE aw.url = in_url;
|
||||||
|
|
||||||
IF FOUND THEN
|
IF FOUND THEN
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
PERFORM * FROM artist a
|
PERFORM * FROM artist a
|
||||||
WHERE a.name = in_artist_name;
|
WHERE a.name = in_artist_name;
|
||||||
|
|
||||||
IF FOUND THEN
|
IF FOUND THEN
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
INSERT INTO artist_website (url) VALUES (in_url);
|
INSERT INTO artist_website (url) VALUES (in_url);
|
||||||
@ -31,15 +31,17 @@ BEGIN
|
|||||||
SELECT * INTO ret_value FROM set_website_name(in_url);
|
SELECT * INTO ret_value FROM set_website_name(in_url);
|
||||||
IF ret_value <> 0 THEN
|
IF ret_value <> 0 THEN
|
||||||
DELETE FROM artist_website WHERE url = in_url;
|
DELETE FROM artist_website WHERE url = in_url;
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
SELECT * INTO ret_value FROM set_folder_path(in_url);
|
SELECT * INTO ret_value FROM set_folder_path(in_url);
|
||||||
IF ret_value <> 0 THEN
|
IF ret_value <> 0 THEN
|
||||||
DELETE FROM artist_website WHERE url = in_url;
|
DELETE FROM artist_website WHERE url = in_url;
|
||||||
RETURN 1;
|
RETURN;
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
RETURN 0;
|
RETURN QUERY SELECT aw.url, aw.folder_path
|
||||||
|
FROM artist_website aw
|
||||||
|
WHERE aw.url ILIKE in_url;
|
||||||
END;
|
END;
|
||||||
$$;
|
$$;
|
||||||
|
Reference in New Issue
Block a user