\HeaderA{ag\_dbconn}{Collect information about the package annotation DB}{ag.Rul.dbconn}
\aliasA{ag\_dbfile}{ag\_dbconn}{ag.Rul.dbfile}
\aliasA{ag\_dbInfo}{ag\_dbconn}{ag.Rul.dbInfo}
\aliasA{ag\_dbschema}{ag\_dbconn}{ag.Rul.dbschema}
\keyword{utilities}{ag\_dbconn}
\keyword{datasets}{ag\_dbconn}
\begin{Description}\relax
Some convenience functions for getting a connection object to (or collecting
information about) the package annotation DB.
\end{Description}
\begin{Usage}
\begin{verbatim}
  ag_dbconn()
  ag_dbfile()
  ag_dbschema(file="", show.indices=FALSE)
  ag_dbInfo()
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{file}] A connection, or a character string naming the file to print to (see
the \code{file} argument of the \code{\LinkA{cat}{cat}} function for
the details).

\item[\code{show.indices}] The CREATE INDEX statements are not shown by default.
Use \code{show.indices=TRUE} to get them.

\end{ldescription}
\end{Arguments}
\begin{Details}\relax
\code{ag\_dbconn} returns a connection object to the package
annotation DB.
IMPORTANT: Don't call \code{\LinkA{dbDisconnect}{dbDisconnect}} on the connection
object returned by \code{ag\_dbconn} or you will
break all the \code{\LinkA{AnnDbObj}{AnnDbObj}} objects defined in this package!

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

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

\code{ag\_dbInfo} prints other information about the package
annotation DB.
\end{Details}
\begin{Value}
\code{ag\_dbconn}: a DBIConnection object representing an open
connection to the package annotation DB.

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

\code{ag\_dbschema}: none (invisible \code{NULL}).

\code{ag\_dbInfo}: none (invisible \code{NULL}).
\end{Value}
\begin{SeeAlso}\relax
\code{\LinkA{dbGetQuery}{dbGetQuery}},
\code{\LinkA{dbConnect}{dbConnect}},
\code{\LinkA{dbconn}{dbconn}},
\code{\LinkA{dbfile}{dbfile}},
\code{\LinkA{dbschema}{dbschema}},
\code{\LinkA{dbInfo}{dbInfo}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
  ## Count the number of rows in the "probes" table:
  dbGetQuery(ag_dbconn(), "SELECT COUNT(*) FROM probes")

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

  ag_dbschema()

  ag_dbInfo()
\end{ExampleCode}
\end{Examples}

