diff --git a/ChangeLog.md b/ChangeLog.md
new file mode 100644
--- /dev/null
+++ b/ChangeLog.md
@@ -0,0 +1,31 @@
+<!-- -*- Markdown -*- -->
+
+## 0.1.4.0
+
+- add tested-with 8.2.1.
+- switch 3rd number of version to separate from no-generic version.
+
+## 0.1.3.3
+
+- Use Haskell implementation test instead of flag test in .cabal
+
+## 0.1.3.2
+
+- Apply generic instances to schema queries.
+- Drop unused implicit imports.
+
+## 0.1.3.1
+
+- Add tested-with.
+
+## 0.1.3.0
+
+- Update typeMap of SQLite3 schema.
+
+## 0.1.2.0
+
+- Get type info of network address in PostgreSQL schema.
+
+## 0.1.1.0
+
+- Add medium-int to typeMap of MySQL schema.
diff --git a/relational-schemas.cabal b/relational-schemas.cabal
--- a/relational-schemas.cabal
+++ b/relational-schemas.cabal
@@ -1,5 +1,5 @@
 name:                relational-schemas
-version:             0.1.3.5
+version:             0.1.4.0
 synopsis:            RDBMSs' schema templates for relational-query
 description:         This package contains some RDBMSs' schema structure definitions.
                      Supported RDBMS schemas are below:
@@ -24,6 +24,7 @@
                      , GHC == 7.8.1, GHC == 7.8.2, GHC == 7.8.3, GHC == 7.8.4
                      , GHC == 7.6.1, GHC == 7.6.2, GHC == 7.6.3
                      , GHC == 7.4.1, GHC == 7.4.2
+extra-source-files:  ChangeLog.md
 
 library
   exposed-modules:
@@ -79,7 +80,10 @@
                        , time
                        , bytestring
 
-                       , relational-query >=0.8.8 && <0.9
+                       , relational-query >= 0.9
+
+  if impl(ghc == 7.4.*)
+    build-depends:        ghc-prim == 0.2.*
 
   hs-source-dirs:      src
   ghc-options:         -Wall
diff --git a/src/Database/Relational/Schema/DB2Syscat/Columns.hs b/src/Database/Relational/Schema/DB2Syscat/Columns.hs
--- a/src/Database/Relational/Schema/DB2Syscat/Columns.hs
+++ b/src/Database/Relational/Schema/DB2Syscat/Columns.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.Relational.Schema.DB2Syscat.Columns
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -13,8 +14,8 @@
 -- Generate template of SYSCAT.columns system catalog table.
 module Database.Relational.Schema.DB2Syscat.Columns where
 
+import GHC.Generics (Generic)
 import Data.Int (Int16, Int32, Int64)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.DB2Syscat.Config (config)
@@ -99,4 +100,4 @@
     ("remarks", [t|Maybe String|])
 
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/DB2Syscat/Keycoluse.hs b/src/Database/Relational/Schema/DB2Syscat/Keycoluse.hs
--- a/src/Database/Relational/Schema/DB2Syscat/Keycoluse.hs
+++ b/src/Database/Relational/Schema/DB2Syscat/Keycoluse.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.Relational.Schema.DB2Syscat.Keycoluse
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -15,6 +16,7 @@
 -- Minimum implementation required to generate table constraints.
 module Database.Relational.Schema.DB2Syscat.Keycoluse where
 
+import GHC.Generics (Generic)
 import Data.Int (Int16)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -27,4 +29,4 @@
   [("constname", [t| String |]),
    ("colname"  , [t| String |]),
    ("colseq"   , [t| Int16 |])]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/DB2Syscat/Tabconst.hs b/src/Database/Relational/Schema/DB2Syscat/Tabconst.hs
--- a/src/Database/Relational/Schema/DB2Syscat/Tabconst.hs
+++ b/src/Database/Relational/Schema/DB2Syscat/Tabconst.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.Relational.Schema.DB2Syscat.Tabconst
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -15,6 +16,7 @@
 -- Minimum implementation required to generate table constraints.
 module Database.Relational.Schema.DB2Syscat.Tabconst where
 
+import GHC.Generics (Generic)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.DB2Syscat.Config (config)
@@ -29,4 +31,4 @@
    --
    ("type"     , [t| String |]),
    ("enforced" , [t| String |])]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/IBMDB2.hs b/src/Database/Relational/Schema/IBMDB2.hs
--- a/src/Database/Relational/Schema/IBMDB2.hs
+++ b/src/Database/Relational/Schema/IBMDB2.hs
@@ -26,8 +26,9 @@
 import Data.Time (LocalTime, Day)
 import Language.Haskell.TH (TypeQ)
 
+import Database.Relational.Query.Type (relationalQuery)
 import Database.Relational.Query
-  (Query, relationalQuery, Relation, query, relation',
+  (Query, Relation, query, relation',
    wheres, (.=.), (!), (><), placeholder, asc, value)
 
 import Control.Applicative ((<|>))
diff --git a/src/Database/Relational/Schema/MySQL.hs b/src/Database/Relational/Schema/MySQL.hs
--- a/src/Database/Relational/Schema/MySQL.hs
+++ b/src/Database/Relational/Schema/MySQL.hs
@@ -19,7 +19,6 @@
 import           Language.Haskell.TH    (TypeQ)
 
 import Database.Relational.Query        ( Query
-                                        , relationalQuery
                                         , query
                                         , relation'
                                         , wheres
@@ -30,6 +29,7 @@
                                         , asc
                                         , value
                                         )
+import Database.Relational.Query.Type   (relationalQuery)
 
 import           Database.Relational.Schema.MySQLInfo.Columns           (Columns, columns)
 import qualified Database.Relational.Schema.MySQLInfo.Columns           as Columns
diff --git a/src/Database/Relational/Schema/MySQLInfo/Columns.hs b/src/Database/Relational/Schema/MySQLInfo/Columns.hs
--- a/src/Database/Relational/Schema/MySQLInfo/Columns.hs
+++ b/src/Database/Relational/Schema/MySQLInfo/Columns.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.MySQLInfo.Columns where
 
+import GHC.Generics (Generic)
 import Data.Int                     (Int16)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -19,4 +21,4 @@
     , ("is_nullable",       [t|String|])
     , ("data_type",         [t|String|])
     ]
-    [''Show])
+    [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/MySQLInfo/KeyColumnUsage.hs b/src/Database/Relational/Schema/MySQLInfo/KeyColumnUsage.hs
--- a/src/Database/Relational/Schema/MySQLInfo/KeyColumnUsage.hs
+++ b/src/Database/Relational/Schema/MySQLInfo/KeyColumnUsage.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.MySQLInfo.KeyColumnUsage where
 
+import GHC.Generics (Generic)
 import Data.Int                     (Int16)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -17,4 +19,4 @@
     , ("column_name"        , [t| String |])
     , ("ordinal_position"   , [t| Int16 |])
     ]
-    [''Show])
+    [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/MySQLInfo/TableConstraints.hs b/src/Database/Relational/Schema/MySQLInfo/TableConstraints.hs
--- a/src/Database/Relational/Schema/MySQLInfo/TableConstraints.hs
+++ b/src/Database/Relational/Schema/MySQLInfo/TableConstraints.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.MySQLInfo.TableConstraints where
 
+import GHC.Generics (Generic)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.MySQLInfo.Config (config)
@@ -15,4 +17,4 @@
     , ("constraint_name"    , [t| String |])
     , ("constraint_type"    , [t| String |])
     ]
-    [''Show])
+    [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/OracleDataDictionary/ConsColumns.hs b/src/Database/Relational/Schema/OracleDataDictionary/ConsColumns.hs
--- a/src/Database/Relational/Schema/OracleDataDictionary/ConsColumns.hs
+++ b/src/Database/Relational/Schema/OracleDataDictionary/ConsColumns.hs
@@ -1,10 +1,11 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.OracleDataDictionary.ConsColumns where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.OracleDataDictionary.Config (config)
@@ -24,4 +25,4 @@
     , ("column_name", [t|Maybe String|])
     -- POSITION                                           NUMBER
     , ("position", [t|Maybe Int32|])
-    ] [''Show])
+    ] [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/OracleDataDictionary/Constraints.hs b/src/Database/Relational/Schema/OracleDataDictionary/Constraints.hs
--- a/src/Database/Relational/Schema/OracleDataDictionary/Constraints.hs
+++ b/src/Database/Relational/Schema/OracleDataDictionary/Constraints.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.OracleDataDictionary.Constraints where
 
+import GHC.Generics (Generic)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.OracleDataDictionary.Config (config)
@@ -36,4 +38,4 @@
     -- INDEX_NAME                                         VARCHAR2(30)
     -- INVALID                                            VARCHAR2(7)
     -- VIEW_RELATED                                       VARCHAR2(14)
-    ] [''Show])
+    ] [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/OracleDataDictionary/TabColumns.hs b/src/Database/Relational/Schema/OracleDataDictionary/TabColumns.hs
--- a/src/Database/Relational/Schema/OracleDataDictionary/TabColumns.hs
+++ b/src/Database/Relational/Schema/OracleDataDictionary/TabColumns.hs
@@ -1,12 +1,11 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.OracleDataDictionary.TabColumns where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
--- import Data.ByteString (ByteString)
--- import Data.Time.Calendar (Day)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.OracleDataDictionary.Config (config)
@@ -78,4 +77,4 @@
     , ("data_upgraded", [t|Maybe String|])
     -- HISTOGRAM                                          VARCHAR2(15)
     , ("histogram", [t|Maybe String|])
-    ] [''Show])
+    ] [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/PgCatalog/PgAttribute.hs b/src/Database/Relational/Schema/PgCatalog/PgAttribute.hs
--- a/src/Database/Relational/Schema/PgCatalog/PgAttribute.hs
+++ b/src/Database/Relational/Schema/PgCatalog/PgAttribute.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.HDBC.Schema.PgCatalog.PgAttribute
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -11,8 +12,8 @@
 -- Portability : unknown
 module Database.Relational.Schema.PgCatalog.PgAttribute where
 
+import GHC.Generics (Generic)
 import Data.Int (Int16, Int32)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.PgCatalog.Config (config)
@@ -66,4 +67,4 @@
 --  attoptions    | text[]    |
     -- ("attoptions"  , [t|String|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/PgCatalog/PgClass.hs b/src/Database/Relational/Schema/PgCatalog/PgClass.hs
--- a/src/Database/Relational/Schema/PgCatalog/PgClass.hs
+++ b/src/Database/Relational/Schema/PgCatalog/PgClass.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.Relational.Schema.PgCatalog.PgClass
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -11,8 +12,8 @@
 -- Portability : unknown
 module Database.Relational.Schema.PgCatalog.PgClass where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.PgCatalog.Config (config)
@@ -50,4 +51,4 @@
  -- relacl         | aclitem[] |
  -- reloptions     | text[]    |
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/PgCatalog/PgConstraint.hs b/src/Database/Relational/Schema/PgCatalog/PgConstraint.hs
--- a/src/Database/Relational/Schema/PgCatalog/PgConstraint.hs
+++ b/src/Database/Relational/Schema/PgCatalog/PgConstraint.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.Relational.Schema.PgCatalog.PgConstraint
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -11,8 +12,8 @@
 -- Portability : unknown
 module Database.Relational.Schema.PgCatalog.PgConstraint where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.PgCatalog.Config (config)
@@ -48,4 +49,4 @@
  -- conbin        | pg_node_tree |
  -- consrc        | text         |
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/PgCatalog/PgNamespace.hs b/src/Database/Relational/Schema/PgCatalog/PgNamespace.hs
--- a/src/Database/Relational/Schema/PgCatalog/PgNamespace.hs
+++ b/src/Database/Relational/Schema/PgCatalog/PgNamespace.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.Relational.Schema.PgCatalog.PgNamespace
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -11,8 +12,8 @@
 -- Portability : unknown
 module Database.Relational.Schema.PgCatalog.PgNamespace where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.PgCatalog.Config (config)
@@ -26,4 +27,4 @@
  -- nspowner | oid       | not null
  -- nspacl   | aclitem[] |
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/PgCatalog/PgType.hs b/src/Database/Relational/Schema/PgCatalog/PgType.hs
--- a/src/Database/Relational/Schema/PgCatalog/PgType.hs
+++ b/src/Database/Relational/Schema/PgCatalog/PgType.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 -- |
 -- Module      : Database.Relational.Schema.PgCatalog.PgType
--- Copyright   : 2013 Kei Hibino
+-- Copyright   : 2013-2017 Kei Hibino
 -- License     : BSD3
 --
 -- Maintainer  : ex8k.hibino@gmail.com
@@ -11,8 +12,8 @@
 -- Portability : unknown
 module Database.Relational.Schema.PgCatalog.PgType where
 
+import GHC.Generics (Generic)
 import Data.Int (Int16, Int32)
-
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
 import Database.Relational.Schema.PgCatalog.Config (config)
@@ -85,4 +86,4 @@
 --  typdefault     | text         |
     ("typdefault", [t|Maybe String|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/PostgreSQL.hs b/src/Database/Relational/Schema/PostgreSQL.hs
--- a/src/Database/Relational/Schema/PostgreSQL.hs
+++ b/src/Database/Relational/Schema/PostgreSQL.hs
@@ -34,8 +34,9 @@
   (DiffTime, NominalDiffTime,
    LocalTime, ZonedTime, Day, TimeOfDay)
 
+import Database.Relational.Query.Type (relationalQuery)
 import Database.Relational.Query
-  (Query, relationalQuery, Relation, query, query', relation', relation, union,
+  (Query, Relation, query, query', relation', relation, union,
    wheres, (.=.), (.>.), in', values, (!), fst', snd',
    placeholder, asc, value, unsafeProjectSql, (><))
 
diff --git a/src/Database/Relational/Schema/SQLServerSyscat/Columns.hs b/src/Database/Relational/Schema/SQLServerSyscat/Columns.hs
--- a/src/Database/Relational/Schema/SQLServerSyscat/Columns.hs
+++ b/src/Database/Relational/Schema/SQLServerSyscat/Columns.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.SQLServerSyscat.Columns where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -65,4 +67,4 @@
   -- is_column_set         sys     bit                        1 Yes
     --("is_column_set", [t|Maybe Bool|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/SQLServerSyscat/IndexColumns.hs b/src/Database/Relational/Schema/SQLServerSyscat/IndexColumns.hs
--- a/src/Database/Relational/Schema/SQLServerSyscat/IndexColumns.hs
+++ b/src/Database/Relational/Schema/SQLServerSyscat/IndexColumns.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.SQLServerSyscat.IndexColumns where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -29,4 +31,4 @@
   -- is_included_column    sys     bit                        1 No
     ("is_included_column", [t|Bool|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/SQLServerSyscat/Indexes.hs b/src/Database/Relational/Schema/SQLServerSyscat/Indexes.hs
--- a/src/Database/Relational/Schema/SQLServerSyscat/Indexes.hs
+++ b/src/Database/Relational/Schema/SQLServerSyscat/Indexes.hs
@@ -1,9 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.SQLServerSyscat.Indexes where
 
---import Data.ByteString (ByteString)
+import GHC.Generics (Generic)
 import Data.Int (Int32)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -53,4 +54,4 @@
 -- filter_definition     sys     nvarchar                 max Yes
     --("filter_definition", [t|Maybe ByteString|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/SQLServerSyscat/Types.hs b/src/Database/Relational/Schema/SQLServerSyscat/Types.hs
--- a/src/Database/Relational/Schema/SQLServerSyscat/Types.hs
+++ b/src/Database/Relational/Schema/SQLServerSyscat/Types.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.SQLServerSyscat.Types where
 
+import GHC.Generics (Generic)
 import Data.Int (Int32)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -46,4 +48,4 @@
 -- is_table_type         sys     bit                        1 No
     --("is_table_type", [t|Bool|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/SQLite3.hs b/src/Database/Relational/Schema/SQLite3.hs
--- a/src/Database/Relational/Schema/SQLite3.hs
+++ b/src/Database/Relational/Schema/SQLite3.hs
@@ -15,7 +15,8 @@
 import Data.Int (Int8, Int16, Int32, Int64)
 import Data.Map (Map)
 import Data.Time (Day, LocalTime)
-import Database.Relational.Query (Query, unsafeTypedQuery)
+import Database.Relational.Query (Query)
+import Database.Relational.Query.Type (unsafeTypedQuery)
 import Database.Relational.Schema.SQLite3Syscat.IndexInfo
 import Database.Relational.Schema.SQLite3Syscat.IndexList
 import Database.Relational.Schema.SQLite3Syscat.TableInfo
diff --git a/src/Database/Relational/Schema/SQLite3Syscat/IndexInfo.hs b/src/Database/Relational/Schema/SQLite3Syscat/IndexInfo.hs
--- a/src/Database/Relational/Schema/SQLite3Syscat/IndexInfo.hs
+++ b/src/Database/Relational/Schema/SQLite3Syscat/IndexInfo.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.SQLite3Syscat.IndexInfo where
 
+import GHC.Generics (Generic)
 import Data.Int (Int64)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -22,4 +24,4 @@
 -- name                  text                No
     ("name", [t|String|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/SQLite3Syscat/IndexList.hs b/src/Database/Relational/Schema/SQLite3Syscat/IndexList.hs
--- a/src/Database/Relational/Schema/SQLite3Syscat/IndexList.hs
+++ b/src/Database/Relational/Schema/SQLite3Syscat/IndexList.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.SQLite3Syscat.IndexList where
 
+import GHC.Generics (Generic)
 import Data.Int (Int64)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -22,4 +24,4 @@
 -- unique                integer             No
     ("unique", [t|Int64|])
   ]
-  [''Show])
+  [''Show, ''Generic])
diff --git a/src/Database/Relational/Schema/SQLite3Syscat/TableInfo.hs b/src/Database/Relational/Schema/SQLite3Syscat/TableInfo.hs
--- a/src/Database/Relational/Schema/SQLite3Syscat/TableInfo.hs
+++ b/src/Database/Relational/Schema/SQLite3Syscat/TableInfo.hs
@@ -1,8 +1,10 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE DeriveGeneric #-}
 
 module Database.Relational.Schema.SQLite3Syscat.TableInfo where
 
+import GHC.Generics (Generic)
 import Data.Int (Int16, Int64)
 import Database.Relational.Query.TH (defineTableTypesAndRecord)
 
@@ -28,4 +30,4 @@
 -- pk                    integer             No
     ("pk", [t|Int16|])
   ]
-  [''Show])
+  [''Show, ''Generic])
