Show Queries.pm syntax highlighted
package Queries;
use Exporter;
use DBI;
@ISA = ("Exporter");
@EXPORT_OK = qw(init_db);
sub init_db ($)
{
unless ($_[0] = DBI->connect("dbi:Oracle:extdb.sdsc.edu","ghgdb","dg123",{
PrintError => 1,
RaiseError => 0
}))
{return '0';}
else
{
$_[0]->{LongReadLen} = 1024 * 1024;
$_[0]->{RaiseError} = 1;
return '1';
}
}
#SQL QUERIES===================================================================
sub query_gene_info ($)
{
#General Gene Information
my $gene_info = $_[0]->prepare
("
select distinct taxonomy_id, g.gene_id, symbol, name
from gene_synonyms s, genes g
where g.gene_id = ?
and g.gene_id = s.gene_id
");
return $gene_info;
}
sub query_ensembl_egene ($)
{
#Cross-Database Links Ens->EG
my $ensembl_egene = $_[0]->prepare
("
select egene_id, symbol, name
from ensembl_egene e, genes g
where ensembl_id = ?
and g.gene_id = e.egene_id
");
return $ensembl_egene
}
#Cross-Database Links EG->Ens
my $egene_ensembl = $_[0]->prepare
("
select ensembl_id, symbol, name
from ensembl_egene e, genes g
where egene_id = ?
and g.gene_id = e.ensembl_id
");
#Etrezgene Accessions
my $eg_accfg = $_[0]->prepare
("
select distinct accession
from gene_accession where gene_id = ?
order by accession
");
my $ensembl_egene
#Ensembl Accessions
my $ens_accfg = $_[0]->prepare
("
select g.translation, accession
from gene_translation g, trans_accession a
where g.gene_id = ?
and g.translation = a.translation
order by g.translation
");
my $ensembl_egene
#Synonyms
my $synfg = $_[0]->prepare
("
select distinct gene_syn
from gene_synonyms where gene_id = ?
order by lower(gene_syn)
");
my $ensembl_egene
#Gene Homology Table
my $genhom = $_[0]->prepare
("
select gene_id_2, database
from gene_homology
where gene_id_1 = ?
");
my $ensembl_egene
See more files for this project here