diff PostgreSQL/Plugins/InsertOrUpdateMetadata.sql @ 436:f16faa1fdc46 pg-transactions

InsertOrUpdateMetadata function + UpdateAndGetStatistics
author Alain Mazy <am@osimis.io>
date Fri, 15 Dec 2023 17:11:26 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/PostgreSQL/Plugins/InsertOrUpdateMetadata.sql	Fri Dec 15 17:11:26 2023 +0100
@@ -0,0 +1,13 @@
+CREATE OR REPLACE FUNCTION InsertOrUpdateMetadata(resourceIds BIGINT[],
+                                                  metadataTypes INTEGER[], 
+                                                  metadataValues TEXT[],
+                                                  revisions INTEGER[])
+RETURNS VOID AS $body$
+BEGIN
+  	FOR i IN 1 .. ARRAY_LENGTH(resourceIds, 1) LOOP
+		-- RAISE NOTICE 'Parameter %: % % %', i, resourceIds[i], metadataTypes[i], metadataValues[i];
+		INSERT INTO Metadata VALUES(resourceIds[i], metadataTypes[i], metadataValues[i], revisions[i]) ON CONFLICT DO NOTHING;
+	END LOOP;
+  
+END;
+$body$ LANGUAGE plpgsql;
\ No newline at end of file