diff --git a/rds-data.cabal b/rds-data.cabal
--- a/rds-data.cabal
+++ b/rds-data.cabal
@@ -1,7 +1,7 @@
 cabal-version: 3.6
 
 name:                   rds-data
-version:                0.0.0.11
+version:                0.0.0.12
 synopsis:               Codecs for use with AWS rds-data
 description:            Codecs for use with AWS rds-data.
 category:               Data
diff --git a/src/Data/RdsData/Encode/Params.hs b/src/Data/RdsData/Encode/Params.hs
--- a/src/Data/RdsData/Encode/Params.hs
+++ b/src/Data/RdsData/Encode/Params.hs
@@ -2,12 +2,15 @@
 
 module Data.RdsData.Encode.Params
   ( EncodeParams(..)
+  , EncodedParams(..)
+  , encode
 
   , rdsValue
 
   , column
 
   , maybe
+  , named
 
   , array
   , bool
@@ -62,10 +65,26 @@
 import qualified Data.Text.Lazy                       as LT
 import qualified Prelude                              as P
 
+newtype EncodedParams = EncodedParams
+  { unEncodedParams :: [Param] -> [Param]
+  }
+
+instance Semigroup EncodedParams where
+  EncodedParams f <> EncodedParams g =
+    EncodedParams (f . g)
+
+instance Monoid EncodedParams where
+  mempty =
+    EncodedParams id
+
 newtype EncodeParams a = EncodeParams
   { encodeParams :: a -> [Param] -> [Param]
   }
 
+encode :: EncodeParams a -> a -> EncodedParams
+encode (EncodeParams f) a =
+  EncodedParams (f a)
+
 instance Contravariant EncodeParams where
   contramap f (EncodeParams g) =
     EncodeParams (g . f)
@@ -98,6 +117,11 @@
 column :: EncodeParam a -> EncodeParams a
 column (EncodeParam f) =
   EncodeParams \a -> (f a:)
+
+named :: Text -> EncodeParam a -> EncodeParams a
+named n ep =
+  EncodeParams \a ->
+    (EP.encodeParam (EP.named n ep) a:)
 
 --------------------------------------------------------------------------------
 
