SQL objects
A *.sql file is migrated by the runtime. Recognized DDL is executed; anything else is only
recorded (so a plain CREATE TABLE will not create a table — use an entity
for that):
- Executed:
CREATE [OR ALTER] PROCEDURE/FUNCTION/VIEW/TRIGGER(SQL Server or PostgreSQL identifier styles). UseCREATE OR ALTERfor idempotency. - Recorded only: everything else (plain statements).
CREATE OR ALTER VIEW Sales.vw_SalesSummary ASSELECT c.Id AS CustomerId, COUNT(s.Id) AS SaleCount, ISNULL(SUM(s.TotalAmount),0) AS TotalSalesFROM Sales.Customers c LEFT JOIN Sales.Sales s ON s.CustomerId = c.Id AND s.IsDeleted = 0WHERE c.IsDeleted = 0 GROUP BY c.Id;Call procedures from a row action:
<Sql>EXEC Sales.usp_MarkSalePaid @SaleId = @Id;</Sql>. Worked examples:
sample/Inventory/models/sql/ (Functions, Views, StoredProcedures, Triggers — e.g.
Views/vw_ProductStock.sql, StoredProcedures/usp_PurchaseOrder_Receive.sql).