Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdWillem Kok Laatst gewijzigd meer dan 10 jaar geleden
1
SQL VOOR BIOLOGEN © 2011 M.L. Hekkelman CMBI Radboud UMC
2
Wat is SQL SQL = Structured Query Language Bedacht in de jaren ’70 bij IBM als tool voor managers Gebruikt in RDBMS RDBMS = Relational Data Base Management System
3
Data opslag X_aa01,C. Elegans,13.5 X_aa02,C. Elegans,12.4 X_aa03,S. Cerevisiae,113.9 X_aa04,S. Cerevisiae,93.6 …
4
Data opslag MetingOrganismeResultaat X_aa01C. Elegans13,5 X_aa02C. Elegans12,4 X_aa03S. Cerevisiae113,9 X_aa04S. Cerevisiae93,6
5
Data opslag Tabel Experiment MetingTekst OrganismeTekst ResultaatGetal
6
Data opslag MetingOrganismeResultaat X_aa01C. Elegans13,5 X_aa02C. Elegans12,4 X_aa03S. Cerevisiae113,9 X_aa04S. Cerevisiae93,6 Redunante data!
7
Data opslag MetingOrganisme_nrResultaat X_aa01113,5 X_aa02112,4 X_aa032113,9 X_aa04293,6 NrNaam 1C. Elegans 2S. Cerevisiae Tabel Experiment Tabel Organisme
8
Data opslag Tabel Experiment MetingTekst Organisme_nrGetal ResultaatGetal Tabel Organisme NrGetal NaamTekst
9
Data opslag Tabel Experiment MetingTekst Organisme_nrGetal ResultaatGetal Tabel Organisme NrGetal NaamTekst Meting is de unieke sleutel voor tabel Experiment Nr is de unieke sleutel voor tabel Organisme Meting en Nr noemen we Primary Keys Organisme_nr is een Foreign Key
10
SQL – De taal SQL definitie bestaat uit drie onderdelen: Data Definition Language (DDL) tabellen definiëren Data Manipulation Language (DML) data toevoegen aan tabellen Data Control Language (DCL) transacties
11
SQL – Data Definition Language CREATE TABLE Organisme ( nrINTEGER PRIMARY KEY, naamVARCHAR ); CREATE TABLE Experiment ( metingVARCHAR PRIMARY KEY, organisme_nrINTEGER REFERENCES Organism(nr), resultaatNUMERIC(4,1) );
12
SQL – Data Manipulation Language INSERT INTO Organism (nr, naam) VALUES ( 1, 'C. Elegans', 2, 'S. Cereviciae' ); SELECT naam FROM Organism WHERE nr = 1; DELETE FROM Organism WHERE nr = 1;
13
Ontsluiten van de data Data in een relationele databank kan gebruikt worden in andere programma’s. TaalMethode PerlDBD/DBI JavaJDBC, Hibernate PythonDB-API Diverse Windows applicatiesODBC
14
Perl DBI #!/usr/bin/perl use DBI; my $dbh = DBI->connect("DBI:Pg:dbname=mydb", "joe", "secret", {'RaiseError' => 1}); my $sth = $dbh->prepare("SELECT nr, naam FROM Organisme"); $sth->execute(); while(my $ref = $sth->fetchrow_hashref()) { print "$ref->{'nr'} is een $ref->{'naam'}\n"; } $dbh->disconnect();
15
Alternatieven voor SQL Excel sheets Makkelijk en bekend Riskant door automatische data interpretatie (datum) Beperkte hoeveelheid data Kaartenbak programma’s als FileMaker Makkelijk in gebruik voor niet programmeurs Niet geschikt voor grote hoeveelheden data Niet echt bruikbaar vanuit een script Full Text indexeringssoftware als MRS (en Lucene?) Snel voor zeer grote datasets Niet relationeel Geen echte datatypes, vooral gericht op tekst
16
Referenties PostgreSQL Tutorial: http://www.postgresql.org/docs/9.0/static/tutorial.html Perl DBI: http://www.perl.com/pub/1999/10/DBI.html http://www.perl.com/pub/1999/10/DBI.html
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.