anchor.diff:              Name = name
               As = createAs
           }
  -
  -let private analyzeStmt =
  -    %% kw "ANALYZE"
  -    -- +.(zeroOrOne * objectName)
  -    -|> id
  -
  -let private attachStmt =
  -    %% kw "ATTACH"
  -    -- zeroOrOne * kw "DATABASE"
  -    -- +.expr
  -    -- kw "AS"
  -    -- +.nameOrKeyword
  -    -|> fun ex schemaName -> ex, schemaName
   
   let private beginStmt =
       %% kw "BEGIN"
  
positive.code:             AsSelect = asSelect
          }
  
  let private ifExists =
      %[  %% kw "IF" -- kw "EXISTS" -|> true
          preturn false
      ]
  
  let private dropObjectType =
      %[  %% kw "INDEX" -|> DropIndex
          %% kw "TABLE" -|> DropTable
  
negative.code:     -- +.objectName
      -- +.[  renameTo
              addColumn
              dropErr
          ]
      -|> fun table alteration -> { Table = table; Alteration = alteration }
  
  