packages feed

relational-record 0.0.1.0 → 0.0.1.1

raw patch · 2 files changed

+233/−2 lines, 2 filesdep +basedep +relational-query

Dependencies added: base, relational-query

Files

relational-record.cabal view
@@ -1,5 +1,5 @@ name:                relational-record-version:             0.0.1.0+version:             0.0.1.1 synopsis:            Meta package of Relational Record description:         Meta package to install Relational Record quickly homepage:            http://khibino.github.io/haskell-relational-record/@@ -13,7 +13,15 @@ cabal-version:       >=1.10  library-  build-depends:       relational-query-HDBC+  exposed-modules:+                     Database.Relational.Query.Documentation++  build-depends:       base <5+                     , relational-query+                     , relational-query-HDBC++  hs-source-dirs:    src+  ghc-options:       -Wall    default-language:    Haskell2010 
+ src/Database/Relational/Query/Documentation.hs view
@@ -0,0 +1,223 @@+-- |+-- Module      : Database.Relational.Query.Documentation+-- Copyright   : 2014 Kei Hibino+-- License     : BSD3+--+-- Maintainer  : ex8k.hibino@gmail.com+-- Stability   : experimental+-- Portability : unknown+--+-- This module is documentation module for relational record.+module Database.Relational.Query.Documentation (+  -- * Concepts+  -- $concepts++  -- ** Relational Query Building DSL+  -- $queryBuildingDSL++  -- *** Monadic Query Context Building+  -- $monadicContext++  -- **** Monadic Operators+  -- $monadicOperator+  query,+  queryMaybe,++  on,+  wheres,++  groupBy,++  having,++  -- **** Direct Join Operators+  -- $directJoin+  inner, left, right, full,+  on',++  -- **** Finalize Context+  -- $finalize+  relation,+  aggregateRelation,++  -- *** Projection Operators+  -- $projectionOperators+  (.=.), (.<.), (.<=.), (.>.), (.>=.), (.<>.),+  casesOrElse, case',+  in', and', or',++  isNothing, isJust, fromMaybe,++  not', exists,++  (.||.),+  (.+.), (.-.), (./.), (.*.), negate', fromIntegral', showNum,++  -- *** Aggregate and Window Functions+  -- $aggregateFunctions+  sum', avg,+  max', min',+  every, any', some',++  rank, denseRank, rowNumber, percentRank, cumeDist,++  -- *** Set Operators+  -- $setOperators+  union, except, intersect,++  -- *** Maybe Projections+  -- $maybeProjection+  (?+?),+  negateMaybe,+  sumMaybe,++  -- *** Placeholders+  -- $placeholder+  query',+  left',+  relation',+  union',++  -- ** Database Operations+  -- $databaseOperations++  -- *** Generalized Statement+  -- $generalizedStmt+  prepareNoFetch,+  bind,+  execute,+  executeNoFetch,++  -- *** Select+  -- $select+  prepareQuery,+  fetch,+  runQuery,++  -- *** Insert Values+  -- $insertValue+  prepareInsert,+  runInsert,++  -- *** Insert Select Results+  -- $insertSelect+  prepareInsertQuery,+  runInsertQuery,++  -- *** Update+  -- $update+  prepareUpdate,+  runUpdate,++  -- *** Delete+  -- $delete+  prepareDelete,+  runDelete,++  -- *** Update by Key+  -- $keyUpdate+  prepareKeyUpdate,+  bindKeyUpdate,+  runKeyUpdate,++  ) where++import Database.Relational.Query+import Database.HDBC.Record++{- $concepts+User inferface of Relational Record has main two part of modules.++[@"Database.Relational.Query"@] Relational Query Building DSL++[@"Database.HDBC.Record"@] Database Operation Actions+ -}++{- $queryBuildingDSL+Relatoinal Query ("Database.Relational.Query") module+defines Typed DSL to build complex SQL query.+ -}++{- $monadicContext+This DSL accumulates query structures into monadic context.+ -}++{- $monadicOperator+Some operators are defined to build query structures in monadic context.++'query' and 'queryMaybe' operators grow query product of monadic context like join operation of SQL.+'on' operator appends a new condition into recent join product condition.++'groupBy' operator aggregates flat projection value.++'wheres' and 'having' operators appends a new condition into whole query condition.+'having' only accepts aggregated projection value.+ -}++{- $directJoin+Not monadic style join is supported by some direct join operators.++'inner', 'left', 'right', 'full' operators can construct join products directly like SQL.+'on'' specifies condition of join product.+ -}++{- $finalize+Several operators are defined to finalize query monadic context.++'relation' operator finalizes flat (not aggregated) query monadic context,+and 'aggregateRelation' operator finalizes aggregated query monadic context.+ -}++{- $projectionOperators+Some operators are defined to caluculate projections.+ -}++{- $aggregateFunctions+Typed aggregate operators are defined.+Aggregated value types is distinguished with Flat value types.+ -}++{- $setOperators+Several operators are defined to manipulate relation set.+ -}++{- $maybeProjection+Operators of projection and aggregation are also provided Maybe type versions.+ -}++{- $placeholder+Some operators are defined to realize type safe placeholder.+ -}+++{- $databaseOperations+Some actions are defined for database site effects.+ -}++{- $generalizedStmt+Actions to manage generalized SQL statements.+ -}++{- $select+Actions to manage SELECT statements.+ -}++{- $insertValue+Actions to manage INSERT ... VALUES ... statements.+ -}++{- $insertSelect+Actions to manage INSERT ... SELECT ... statements.+ -}++{- $update+Actions to manage UPDATE statements.+ -}++{- $delete+Actions to manage DELETE statements.+ -}++{- $keyUpdate+Actions to manage UPDATE statements which updates columns other than specified key of the records selected by specified key.+ -}