diff --git a/relational-query-HDBC.cabal b/relational-query-HDBC.cabal
--- a/relational-query-HDBC.cabal
+++ b/relational-query-HDBC.cabal
@@ -1,5 +1,5 @@
 name:                relational-query-HDBC
-version:             0.5.0.0
+version:             0.6.0.0
 synopsis:            HDBC instance of relational-query and typed query interface for HDBC
 description:         This package contains the HDBC instance of relational-query and
                      the typed query interface for HDBC.
@@ -49,7 +49,7 @@
                        , dlist
 
                        , names-th
-                       , persistable-record >= 0.3
+                       , persistable-record >= 0.4
                        , relational-query >= 0.8
                        , relational-schemas
                        , HDBC >=2
diff --git a/src/Database/HDBC/Record/InternalTH.hs b/src/Database/HDBC/Record/InternalTH.hs
--- a/src/Database/HDBC/Record/InternalTH.hs
+++ b/src/Database/HDBC/Record/InternalTH.hs
@@ -31,7 +31,7 @@
 import Database.Record.Instances ()
 import Database.Relational.Query.TH (defineScalarDegree)
 
-import Database.HDBC.Record.TH (derivePersistableInstanceFromValue)
+import Database.HDBC.Record.TH (derivePersistableInstanceFromConvertible)
 
 
 -- | Wrapper type which represents type constructor.
@@ -113,6 +113,6 @@
   svs <- convertibleSqlValues
   ws <- mapInstanceD deriveNotNullType (toList $ Set.difference svs wds)
   let svl = toList svs
-  ps <- mapInstanceD derivePersistableInstanceFromValue svl
+  ps <- mapInstanceD derivePersistableInstanceFromConvertible svl
   ss <- mapInstanceD defineScalarDegree svl
   return $ ws ++ ps ++ ss
diff --git a/src/Database/HDBC/Record/Persistable.hs b/src/Database/HDBC/Record/Persistable.hs
--- a/src/Database/HDBC/Record/Persistable.hs
+++ b/src/Database/HDBC/Record/Persistable.hs
@@ -2,7 +2,6 @@
 {-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE MultiParamTypeClasses #-}
 {-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE UndecidableInstances #-}
 {-# LANGUAGE TemplateHaskell #-}
 
 -- |
@@ -15,29 +14,15 @@
 -- Portability : unknown
 --
 -- This module provides HDBC instance definitions of DB-record.
-module Database.HDBC.Record.Persistable (
-  persistableSqlValue
-  ) where
+module Database.HDBC.Record.Persistable () where
 
-import Database.Record (PersistableSqlValue, PersistableType (..), PersistableValue (..))
+import Database.Record (PersistableType (..))
 import Database.Record.Persistable (unsafePersistableSqlTypeFromNull)
-import qualified Database.Record.Persistable as Record
 import Database.HDBC.Record.InternalTH (derivePersistableInstancesFromConvertibleSqlValues)
 
-import Data.Convertible (Convertible)
-import Database.HDBC (SqlValue(SqlNull), fromSql, toSql)
+import Database.HDBC (SqlValue(SqlNull))
 
 instance PersistableType SqlValue  where
   persistableType = unsafePersistableSqlTypeFromNull SqlNull
-
--- | Derived 'PersistableSqlValue' from 'Convertible'.
-persistableSqlValue :: (Convertible SqlValue a, Convertible a SqlValue)
-                       => PersistableSqlValue SqlValue a
-persistableSqlValue =  Record.persistableSqlValue persistableType fromSql toSql
-
--- | Infered 'PersistableSqlValue' from 'Convertible'.
-instance (Convertible SqlValue a, Convertible a SqlValue)
-         => PersistableValue SqlValue a  where
-  persistableValue = persistableSqlValue
 
 $(derivePersistableInstancesFromConvertibleSqlValues)
diff --git a/src/Database/HDBC/Record/TH.hs b/src/Database/HDBC/Record/TH.hs
--- a/src/Database/HDBC/Record/TH.hs
+++ b/src/Database/HDBC/Record/TH.hs
@@ -12,22 +12,25 @@
 --
 -- This module provides DB-record templates depends on HDBC.
 module Database.HDBC.Record.TH (
-  derivePersistableInstanceFromValue,
+  derivePersistableInstanceFromConvertible,
   ) where
 
+import Data.Convertible (convert)
 import Language.Haskell.TH (Q, Dec, Type)
 import Database.HDBC (SqlValue)
 import Database.HDBC.SqlValueExtra ()
-import Database.Record (FromSql(..), valueFromSql, ToSql(..), valueToSql)
+import Database.Record (FromSql (..), ToSql(..))
+import Database.Record.FromSql (valueRecordFromSql)
+import Database.Record.ToSql (valueRecordToSql)
 
 
 -- | Template to declare HDBC instances of DB-record against single value type.
-derivePersistableInstanceFromValue :: Q Type  -- ^ Type to implement instances
-                                   -> Q [Dec] -- ^ Result declarations
-derivePersistableInstanceFromValue typ =
+derivePersistableInstanceFromConvertible :: Q Type  -- ^ Type to implement instances
+                                         -> Q [Dec] -- ^ Result declarations
+derivePersistableInstanceFromConvertible typ =
   [d| instance FromSql SqlValue $(typ)  where
-        recordFromSql = valueFromSql
+        recordFromSql = valueRecordFromSql convert
 
       instance ToSql SqlValue $(typ)  where
-        recordToSql = valueToSql
+        recordToSql = valueRecordToSql convert
     |]
