\name{mwgcod_dbconn}

\alias{mwgcod_dbconn}
\alias{mwgcod_dbfile}
\alias{mwgcod_dbschema}
\alias{mwgcod_dbInfo}


\title{Collect information about the package annotation DB}

\description{
  Some convenience functions for getting a connection object to (or collecting
  information about) the package annotation DB.
}

\usage{
  mwgcod_dbconn()
  mwgcod_dbfile()
  mwgcod_dbschema(file="", show.indices=FALSE)
  mwgcod_dbInfo()
}

\arguments{
  \item{file}{
    A connection, or a character string naming the file to print to (see
    the \code{file} argument of the \code{\link[base]{cat}} function for
    the details).
  }
  \item{show.indices}{
    The CREATE INDEX statements are not shown by default.
    Use \code{show.indices=TRUE} to get them.
  }
}

\details{
  \code{mwgcod_dbconn} returns a connection object to the package
  annotation DB.
  IMPORTANT: Don't call \code{\link[DBI]{dbDisconnect}} on the connection
  object returned by \code{mwgcod_dbconn} or you will
  break all the \code{\link[AnnotationDbi]{AnnDbObj}} objects defined in this package!

  \code{mwgcod_dbfile} returns the path (character string) to the
  package annotation DB (this is an SQLite file).

  \code{mwgcod_dbschema} prints the schema definition of the
  package annotation DB.

  \code{mwgcod_dbInfo} prints other information about the package
  annotation DB.
}

\value{
  \code{mwgcod_dbconn}: a DBIConnection object representing an open
  connection to the package annotation DB.

  \code{mwgcod_dbfile}: a character string with the path to the
  package annotation DB.

  \code{mwgcod_dbschema}: none (invisible \code{NULL}).

  \code{mwgcod_dbInfo}: none (invisible \code{NULL}).
}

\seealso{
  \code{\link[DBI]{dbGetQuery}},
  \code{\link[DBI]{dbConnect}},
  \code{\link[AnnotationDbi]{dbconn}},
  \code{\link[AnnotationDbi]{dbfile}},
  \code{\link[AnnotationDbi]{dbschema}},
  \code{\link[AnnotationDbi]{dbInfo}}
}

\examples{
  ## Count the number of rows in the "probes" table:
  dbGetQuery(mwgcod_dbconn(), "SELECT COUNT(*) FROM probes")

  ## The connection object returned by mwgcod_dbconn() was created with:
  dbConnect(SQLite(), dbname=mwgcod_dbfile(), cache_size=64000, synchronous=0)

  mwgcod_dbschema()

  mwgcod_dbInfo()
}

\keyword{utilities}
\keyword{datasets}