feat: Update monetary column data types to DOUBLE PRECISION, add IF NOT EXISTS to column additions, and introduce a timestamp trigger function.

This commit is contained in:
2026-02-15 14:43:31 -03:00
parent bb4cd01d99
commit 2a16a18676
2 changed files with 16 additions and 7 deletions
@@ -1,6 +1,6 @@
-- Add price and currency to courses table
ALTER TABLE courses ADD COLUMN price NUMERIC(10, 2) DEFAULT 0.00;
ALTER TABLE courses ADD COLUMN currency VARCHAR(10) DEFAULT 'USD';
ALTER TABLE courses ADD COLUMN IF NOT EXISTS price DOUBLE PRECISION DEFAULT 0.0;
ALTER TABLE courses ADD COLUMN IF NOT EXISTS currency VARCHAR(10) DEFAULT 'USD';
-- Update fn_create_course to handle price and currency
CREATE OR REPLACE FUNCTION fn_create_course(
@@ -8,7 +8,7 @@ CREATE OR REPLACE FUNCTION fn_create_course(
p_instructor_id UUID,
p_title TEXT,
p_pacing_mode TEXT DEFAULT 'self_paced',
p_price NUMERIC(10, 2) DEFAULT 0.00,
p_price DOUBLE PRECISION DEFAULT 0.0,
p_currency TEXT DEFAULT 'USD'
) RETURNS SETOF courses AS $$
BEGIN
@@ -42,7 +42,7 @@ CREATE OR REPLACE FUNCTION fn_update_course(
p_start_date TIMESTAMP WITH TIME ZONE,
p_end_date TIMESTAMP WITH TIME ZONE,
p_certificate_template TEXT,
p_price NUMERIC(10, 2),
p_price DOUBLE PRECISION,
p_currency TEXT
) RETURNS SETOF courses AS $$
BEGIN