
\name{porcine_dbconn}

\alias{porcine_dbconn}
\alias{porcine_dbfile}
\alias{porcine_dbschema}
\alias{porcine_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{
  porcine_dbconn()
  porcine_dbfile()
  porcine_dbschema(file="", show.indices=FALSE)
  porcine_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{porcine_dbconn} returns a connection object to the
  package annotation DB.  IMPORTANT: Don't call
  \code{\link[DBI:dbConnect]{dbDisconnect}} on the connection object
  returned by \code{porcine_dbconn} or you will break all the
  \code{\link[AnnotationDbi:AnnDbObj-class]{AnnDbObj}} objects defined
  in this package!

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

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

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

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

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

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

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

\seealso{
  \code{\link[DBI:dbSendQuery]{dbGetQuery}},
  \code{\link[DBI:dbConnect]{dbConnect}},
  \code{\link[AnnotationDbi:AnnDbObj-class]{dbconn}},
  \code{\link[AnnotationDbi:AnnDbObj-class]{dbfile}},
  \code{\link[AnnotationDbi:AnnDbObj-class]{dbschema}},
  \code{\link[AnnotationDbi:AnnDbObj-class]{dbInfo}}
}

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

  porcine_dbschema()

  porcine_dbInfo()
}

\keyword{utilities}
\keyword{datasets}

