Practica 1 informática (2015)

Apunte Español
Universidad Universidad Autónoma de Barcelona (UAB)
Grado Genética - 2º curso
Asignatura Técnicas instrumentales
Año del apunte 2015
Páginas 4
Fecha de subida 22/03/2015
Descargas 19

Vista previa del texto

Maria Jiménez Coronado 1358768 Tècniques instrumentals.
pràctica 1 ACTIVITAT 1 Exercici A (1.1): Des de la línia de comandaments de MySQL crea una base de dades ‘ti_p1’. A continuació crea una taula ‘gens’ amb la següent estructura (pots afegir més columnes):  ID (autoincremental) (clau primària)  nom (camp de text per al nom del gen)  organisme (camp de text per al nom científic)  mida (nombre de nucleòtids)  seqüència (camp de text) Quines queries has fet servir? T'ha sorgit algun error? He fet servir les queries CREATE TABLE, per crear la taula "gens"; INT, UNSIGNED i AUTO_INCREMENT per ID, VARCHAR(X) per nom, sequencia i organisme INT UNSIGNED NOT NULL per mida. A més, he indicat que la primary key es ID.
Si que s'han comés errors, sobretot per falta de sinaxis.
Exercici B (1.2): Primer de tot, crea la taula per als organismes:  id (autoincremental) (clau primària)  nom (camp de text per al nom científic)  descripció (camp de text pel nom comú o altra informació) A continuació, podràs crear una foreign key a la taula de gens ja existent que relacioni la taula a través de l'ID de la taula d'organismes.
Quines queries has fet servir? Has modificat alguna columna ja existent? Per què? En aquest cas i seguint la imatge: Hem modificat la columna d’organisme, ja que per poder relacionar ha de ser les dues SMALLINT perquè es pugui fer la relació  abans organisme de la taula gen era VARCHAR i ara serà SMALLINT, com id de la taula organisme.
Exercici C (opcional, 1.3): Prova de fer DROP a les teves taules i columnes. IMPORTANT: assegura’t de tenir les queries que has fet servir per crear les diferents taules abans d’esborrar-les, així les podràs tornar a crear fàcilment després del DROP.
mysql>DROP table gens; DROP table organisme Maria Jiménez Coronado 1358768 Tècniques instrumentals.
pràctica 1 En definitiva, podem comprovar com han quedat les taules: ACTIVITAT 2 Exercici A (2.1): És hora d'omplir les taules (anota les queries que facis servir junt amb qualsevol comentari que consideris rellevant). Omple la taula 'organismes' amb els que vulguis. Per exemple:  Homo sapiens  humà  Pan troglodytes  ximpanzé  Gorilla gorilla  goril·la  Mus musculus  ratolí A continuació, omple la taula de gens amb uns quants gens repetits per a cada organisme. Fes servir noms curts de gens reals o inventats (BRCA2, HTT, SRY, OCA2, ...). Utilitza diferents valors al camp mida. Tot seguint la imatge: Maria Jiménez Coronado 1358768 Tècniques instrumentals.
pràctica 1 Excercici B (2.2): A partir d’ara pots treballar amb el MySQL Workbench (o continuar amb la línia de comandes). A la part de l’esquerra pots visualitzar les diferents bases de dades i si vas desplegant pots veure les taules i les columnes que contenen. A la part central pots escriure les queries i t’apareixeran els resultats a sota. Per executar una query, has de clissar sobre una d’aquestes icones:  Nosaltres línea de comanda.
Realitza els següents SELECT (i anota’ls a continuació):  Tota la informació dels gens d'un mateix nom. SELECT *FROM gens; Per a un mateix nom: mysql> SELECT *FROM gens WHERE nom='LJM', per exemple.
 El nombre de gens més petits d'X nucleòtids (tria el valor d'X). mysql> SELECT count(nom) FROM gens WHERE mida < 6;  Les seqüències dels 5 gens més grans de la teva base de dades. En comptes de 5 em fet 3 gens. mysql> SELECT *FROM gens order by mida desc limit 3; Exercici C (2.3): Realitza les següents consultes unint les taules 'organismes' i 'gens' per tal que en comptes de l'identificador dels organismes surti el nom de l'organisme als resultats: En un primer moment, hem d'unir les taules. Per fer-ho, usarem la comanda INNER JOIN ___ ON, després d'haver seleccionat (amb les queries SELECT ___ FROM) la taula de gens, amb totes les seves columnes en aquest cas (*).Així doncs: mysql> SELECT * FROM gens INNER JOIN organisme ON gens.organisme=orgaisme.id; A continuació:  Tota la informació dels gens d'un mateix nom.
Per a això, usarem la queria WHERE per indicar una condició que s'ha de complir. En aquest cas estaríem dient que volem visualitzar la taula que contingui com a nom la dada (gen) JULYLAU. Així doncs: mysql> SELECT* FROM gens WHERE nom='JULYLAU'; Maria Jiménez Coronado 1358768 Tècniques instrumentals.
pràctica 1 Però, com ens està demanant tota la informació d'un gen d'un sol nom, ho hem de fer amb les taules relacionades.
D'aquesta manera: mysql> SELECT * FROM gens INNER JOIN organisme ON gens.organisme=organisme.id WHERE gens.nom= 'JULYLAU   Tota la informació dels 5 gens més grans de la teva base de dades.
NOTA: en comptes dels 5, s'ha fet amb 3 donat que en el numero total és de 4 gens.
En aquest apartat, el que hem d'afegir és una limitació; i per això s'ha d'usar la queria LIMIT X (en aquest cas amb X=3), després d'indicar la taula de la qual volem obtenir la informació. Amés, hem de posar per quina columna volem ordenar, mitjanant ORDER BY idita columna (en aquest cas mida). A més indicarem que volem l'ordre descendent (desc.), donat que si no, per defecte, ho fa de manera ascendent. Així doncs: mysql> SELECT *FROM gens INNER JOIN organisme ON gens.organisme=organisme.id ORDER BY mida desc LIMIT 3; A més, per evitar dades redundants, en comptes de tenir en compte totes les columnes (*), podem indicar aquelles que realment ens interessen. Per tant, es substituirà * per nom (gen), mida, seqüència i nom (organisme). En definitiva: mysql> SELECT gens.nom, mida, sequencia, organisme.nom FROM gens INNER JOIN organisme ON organisme.id=gens.organisme ORDER BY mida desc LIMIT 3; NOTA: per poder distingir entre les dues columnes que es titulen "nom", s'indica la taula a la que pertanyen, essent respectivament nom.gen i nom.organisme.
Quines queries has fet servir? (explicació en cada apartat) Així doncs, les queries fetes servir en aquest exercici es resumeixen en les següents: SELECT_FROM  seleccionar la taula INNER JOIN_ON  relacionar taules WHERE  indicar específicament el que es vol veure.
ORDER BY columna per la que es vol ordenar una taula.
LIMIT X (X, és variable)  exposa el número de files X.
+: Hem usat el "comodí" * per tal d'indicar que eren totes les columnes.
...