diff options
Diffstat (limited to 'db_demo/sql/funcs/cr_func_insert_turn.sql')
-rw-r--r-- | db_demo/sql/funcs/cr_func_insert_turn.sql | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/db_demo/sql/funcs/cr_func_insert_turn.sql b/db_demo/sql/funcs/cr_func_insert_turn.sql new file mode 100644 index 0000000..de6620d --- /dev/null +++ b/db_demo/sql/funcs/cr_func_insert_turn.sql @@ -0,0 +1,31 @@ +CREATE OR REPLACE FUNCTION insert_turn (
+ integer, -- testid
+ time, -- elapsedtime
+ integer, -- holeposition
+ integer -- blockid
+) RETURNS integer AS $$
+DECLARE
+ par_testid ALIAS FOR $1;
+ par_elapsedtime ALIAS FOR $2;
+ par_holeposition ALIAS FOR $3;
+ par_blockid ALIAS FOR $4;
+
+ var_turnid integer;
+BEGIN
+ INSERT INTO tbl_turn (
+ testid,
+ elapsedtime,
+ holeposition,
+ blockid
+ ) VALUES (
+ par_testid,
+ par_elapsedtime,
+ par_holeposition,
+ par_blockid
+ );
+
+ SELECT INTO var_turnid seq_turn.last_value;
+
+ RETURN var_turnid;
+END;
+$$ LANGUAGE plpgsql;
\ No newline at end of file |