
\name{FruitFlyAgilent_dbconn}

\alias{FruitFlyAgilent_dbconn}
\alias{FruitFlyAgilent_dbfile}
\alias{FruitFlyAgilent_dbschema}
\alias{FruitFlyAgilent_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{
  FruitFlyAgilent_dbconn()
  FruitFlyAgilent_dbfile()
  FruitFlyAgilent_dbschema(file="", show.indices=FALSE)
  FruitFlyAgilent_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{FruitFlyAgilent_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{FruitFlyAgilent_dbconn} or you will break all the
  \code{\link[AnnotationDbi:AnnDbObj-class]{AnnDbObj}} objects defined
  in this package!

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

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

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

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

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

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

  \code{FruitFlyAgilent_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{
  ## Count the number of rows in the "probes" table:
  dbGetQuery(FruitFlyAgilent_dbconn(), "SELECT COUNT(*) FROM probes")

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

  FruitFlyAgilent_dbschema()

  FruitFlyAgilent_dbInfo()
}

\keyword{utilities}
\keyword{datasets}

