diff --git a/IHP/DataSync/ChangeNotifications.hs b/IHP/DataSync/ChangeNotifications.hs
index f492248a8..a8ad25d38 100644
--- a/IHP/DataSync/ChangeNotifications.hs
+++ b/IHP/DataSync/ChangeNotifications.hs
@@ -41,7 +41,7 @@ createNotificationFunction :: RLS.TableWithRLS -> PG.Query
createNotificationFunction table = [i|
DO $$
BEGIN
- CREATE FUNCTION #{functionName}() RETURNS TRIGGER AS $BODY$
+ CREATE FUNCTION "#{functionName}"() RETURNS TRIGGER AS $BODY$
DECLARE
payload TEXT;
large_pg_notification_id UUID;
@@ -86,14 +86,14 @@ createNotificationFunction table = [i|
RETURN new;
END;
$BODY$ language plpgsql;
- DROP TRIGGER IF EXISTS #{insertTriggerName} ON #{tableName};
- DROP TRIGGER IF EXISTS #{updateTriggerName} ON #{tableName};
- DROP TRIGGER IF EXISTS #{deleteTriggerName} ON #{tableName};
+ DROP TRIGGER IF EXISTS "#{insertTriggerName}" ON "#{tableName}";
+ DROP TRIGGER IF EXISTS "#{updateTriggerName}" ON "#{tableName}";
+ DROP TRIGGER IF EXISTS "#{deleteTriggerName}" ON "#{tableName}";
- CREATE TRIGGER #{insertTriggerName} AFTER INSERT ON "#{tableName}" FOR EACH ROW EXECUTE PROCEDURE #{functionName}();
- CREATE TRIGGER #{updateTriggerName} AFTER UPDATE ON "#{tableName}" FOR EACH ROW EXECUTE PROCEDURE #{functionName}();
- CREATE TRIGGER #{deleteTriggerName} AFTER DELETE ON "#{tableName}" FOR EACH ROW EXECUTE PROCEDURE #{functionName}();
+ CREATE TRIGGER "#{insertTriggerName}" AFTER INSERT ON "#{tableName}" FOR EACH ROW EXECUTE PROCEDURE "#{functionName}"();
+ CREATE TRIGGER "#{updateTriggerName}" AFTER UPDATE ON "#{tableName}" FOR EACH ROW EXECUTE PROCEDURE "#{functionName}"();
+ CREATE TRIGGER "#{deleteTriggerName}" AFTER DELETE ON "#{tableName}" FOR EACH ROW EXECUTE PROCEDURE "#{functionName}"();
EXCEPTION
WHEN duplicate_function THEN
null;
diff --git a/IHP/DataSync/RowLevelSecurity.hs b/IHP/DataSync/RowLevelSecurity.hs
index d26d63612..42c8a2835 100644
--- a/IHP/DataSync/RowLevelSecurity.hs
+++ b/IHP/DataSync/RowLevelSecurity.hs
@@ -128,7 +128,7 @@ makeCachedEnsureRLSEnabled = do
-- >>> hasRLSEnabled "my_table"
-- True
hasRLSEnabled :: (?modelContext :: ModelContext) => Text -> IO Bool
-hasRLSEnabled table = sqlQueryScalar "SELECT relrowsecurity FROM pg_class WHERE oid = ?::regclass" [table]
+hasRLSEnabled table = sqlQueryScalar "SELECT relrowsecurity FROM pg_class WHERE oid = quote_ident(?)::regclass" [table]
-- | Can be constructed using 'ensureRLSEnabled'
--