Index: music/migrations/0006_alter_deletedcustomerlog_options_and_more.py
===================================================================
--- music/migrations/0006_alter_deletedcustomerlog_options_and_more.py	(revision 75ea229d549bcf10342f483dbb27e69334411131)
+++ music/migrations/0006_alter_deletedcustomerlog_options_and_more.py	(revision 75ea229d549bcf10342f483dbb27e69334411131)
@@ -0,0 +1,49 @@
+# Generated by Django 5.1.3 on 2025-05-07 11:22
+
+import django.db.models.deletion
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ("music", "0005_alter_deletedcustomerlog_options_and_more"),
+    ]
+
+    operations = [
+        migrations.AlterModelOptions(
+            name="deletedcustomerlog",
+            options={"managed": False},
+        ),
+        migrations.AlterModelOptions(
+            name="invoice",
+            options={"managed": False},
+        ),
+        migrations.AlterModelOptions(
+            name="invoiceline",
+            options={"managed": False},
+        ),
+        migrations.AlterModelOptions(
+            name="playlisttrack",
+            options={"managed": False},
+        ),
+        migrations.CreateModel(
+            name="Price",
+            fields=[
+                ("price_id", models.AutoField(primary_key=True, serialize=False)),
+                ("value", models.DecimalField(decimal_places=2, max_digits=10)),
+                ("date", models.DateTimeField()),
+                (
+                    "track_id",
+                    models.ForeignKey(
+                        db_column="track_id",
+                        on_delete=django.db.models.deletion.DO_NOTHING,
+                        to="music.track",
+                    ),
+                ),
+            ],
+            options={
+                "db_table": "price",
+            },
+        ),
+    ]
Index: music/migrations/0007_alter_price_options.py
===================================================================
--- music/migrations/0007_alter_price_options.py	(revision 75ea229d549bcf10342f483dbb27e69334411131)
+++ music/migrations/0007_alter_price_options.py	(revision 75ea229d549bcf10342f483dbb27e69334411131)
@@ -0,0 +1,17 @@
+# Generated by Django 5.1.3 on 2025-05-07 11:22
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ("music", "0006_alter_deletedcustomerlog_options_and_more"),
+    ]
+
+    operations = [
+        migrations.AlterModelOptions(
+            name="price",
+            options={"managed": False},
+        ),
+    ]
Index: music/models.py
===================================================================
--- music/models.py	(revision d715225165f5c02dac7aa685b6df02652bc35e06)
+++ music/models.py	(revision 75ea229d549bcf10342f483dbb27e69334411131)
@@ -127,4 +127,5 @@
     class Meta:
         db_table = 'invoice'
+        managed = False
 
 
@@ -138,4 +139,5 @@
     class Meta:
         db_table = 'invoice_line'
+        managed = False
 
 
@@ -158,4 +160,5 @@
     class Meta:
         db_table = 'playlist_track'
+        managed = False
         unique_together = (('playlist', 'track'),)
 
@@ -173,5 +176,19 @@
     class Meta:
         db_table = 'deleted_customer_log'
+        managed = False
 
     def __str__(self):
         return f"{self.first_name} {self.last_name} - Deleted on {self.deleted_at} - Total Spent: ${self.total_spent} from {self.invoice_count} invoices"
+
+class Price(models.Model):
+    price_id = models.AutoField(primary_key=True)
+    value = models.DecimalField(max_digits=10, decimal_places=2)
+    date = models.DateTimeField()
+    track_id = models.ForeignKey(Track, on_delete=models.DO_NOTHING, db_column='track_id')
+
+    class Meta:
+        managed = False
+        db_table = 'price'
+
+    def __str__(self):
+        return f"{self.track_id} - {self.value} - {self.date}"
Index: music/triggers/insert_price_on_track_insert.sql
===================================================================
--- music/triggers/insert_price_on_track_insert.sql	(revision 75ea229d549bcf10342f483dbb27e69334411131)
+++ music/triggers/insert_price_on_track_insert.sql	(revision 75ea229d549bcf10342f483dbb27e69334411131)
@@ -0,0 +1,14 @@
+CREATE OR REPLACE FUNCTION insert_price_on_track_insert()
+RETURNS TRIGGER AS $$
+BEGIN
+  INSERT INTO price (value, date, track_id)
+  VALUES (NEW.unit_price, NOW(), NEW.track_id);
+
+  RETURN NEW;
+END;
+$$ LANGUAGE plpgsql;
+
+CREATE TRIGGER insert_price_on_track_insert
+AFTER INSERT ON track
+FOR EACH ROW
+EXECUTE FUNCTION insert_price_on_track_insert();
Index: music/triggers/insert_price_on_track_update.sql
===================================================================
--- music/triggers/insert_price_on_track_update.sql	(revision 75ea229d549bcf10342f483dbb27e69334411131)
+++ music/triggers/insert_price_on_track_update.sql	(revision 75ea229d549bcf10342f483dbb27e69334411131)
@@ -0,0 +1,16 @@
+CREATE OR REPLACE FUNCTION insert_price_on_track_update()
+RETURNS TRIGGER AS
+$$
+BEGIN
+    INSERT INTO price (value, date, track_id)
+    VALUES (NEW.unit_price, NOW(), NEW.track_id);
+
+    RETURN NEW;
+END;
+$$ LANGUAGE plpgsql;
+
+CREATE TRIGGER insert_price_on_track_update
+    AFTER UPDATE
+    ON track
+    FOR EACH ROW
+EXECUTE FUNCTION insert_price_on_track_update();
