Création et développement d une base de données sur le VIH

Dimension: px
Commencer à balayer dès la page:

Download "Création et développement d une base de données sur le VIH"

Transcription

1 Création et développement d une base de données sur le VIH Stage de Licence de Biologie-Informatique Par Stéphanie Pérot Sous la direction d Anne Vanet Année Atelier de BioInformatique rattaché à l Université Pierre et Marie CURIE 12 rue Cuvier F PARIS

2 Résumé Dans le cadre de la formation Licence de BioInformatique, j ai effectué un stage à l Atelier de Bio-Informatique [0], sous la direction d Anne Vanet, Maître de Conférence à Paris 7 et chargée de recherche à l Atelier de BioInformatique. L ABI est un laboratoire de recherche rassemblant biologistes, biophysiciens et informaticiens de provenances diverses et désirant travailler à l interface Biologie/Informatique. J ai réalisé la plus grande partie de mon stage l été 2005 par initiative personnelle, puis je l ai repris et complété durant le 2 ème semestre de l année Ce stage consistait en la création et le développement d une base de données sur le VIH, sujet sur lequel travaillent en collaboration Anne Vanet, Sophie Brouillet, Ingénieur d Etude à Paris 6 et Emmanuelle Ollivier, Maître de Conférence à Paris 7. D un point de vue chronologique, j ai commencé par l étude des bases de données en général afin d en comprendre la logique, l utilité et la création. Puis j ai conçu la structure de la base et l ai créée sous MySQL. Je me suis ensuite initiée au langage de programmation Perl en vue de comprendre et d écrire des scripts permettant la récupération de données sur des banques existantes : Los Alamos National Laboratory (LANL), Stanford et Swissprot. Enfin, à l aide d HTML et de PHP, j ai développé une interface graphique permettant une utilisation simple et visuelle de la base. A l heure actuelle, la base n a subit que quelques modifications et contient séquences protéiques

3 Remerciements Ce stage m a beaucoup appris autant sur un plan concret par l apprentissage de MySQL, Perl, PHP et HTML que sur un plan plus abstrait au niveau relationnel et humain au sein du laboratoire. Un grand merci à tous les chercheurs et les thésards de l ABI, en particulier à Anne Vanet, Sophie Brouillet et Emmanuelle Ollivier qui m ont aidée et guidée tout au long de mon stage. Ma reconnaissance va également à Joël Pothier, directeur de l ABI, qui m a accueillie au sein de son laboratoire et proposé ce stage par l intermédiaire d Anne Vanet

4 Sommaire 1. VIRUS HUMAIN DE L IMMUNODEFICIENCE PRESENTATION DU VIRUS UTILITE DE LA BASE AU SEIN DU LABORATOIRE BASE DE DONNEES MYSQL STRUCTURE DE LA BASE RECUPERATION DES DONNEES PERL CONTENU DE LA BASE INTERFACE GRAPHIQUE PHP ET HTML VISUALISATION DE LA BASE ANNEXES BIBLIOGRAPHIE

5 Introduction Il existe des banques de données biologiques sur Internet telles LANL, Swissprot, Stanford, comportant notamment des informations sur le VIH. Cependant aucune d entre elles n est suffisamment exhaustive pour les besoins des chercheuses de l ABI, avec qui j ai travaillé. C est pourquoi elles ont souhaité créer leur propre base de données sur le VIH grâce au recoupement des informations récupérées dans le domaine public. Après une brève description du virus et de la nécessité d utiliser une base de données dans leur travail, je m attacherai à présenter la structure de la base, la récupération des données et enfin la réalisation de l interface graphique

6 1. Virus Humain de l Immunodéficience 1. Présentation du virus Le Virus de l Immunodéficience Humaine ou VIH est un rétrovirus, c est-à-dire un virus eucaryotique contenant de l ARN viral, ainsi qu une ADN polymérase dépendante de cet ARN : la reverse transcriptase. Ils sont à l intérieur d une capside, elle-même entourée d une enveloppe cytoplasmique de 120 nm de diamètre environ, à laquelle sont accrochées des glycoprotéines de surface, ainsi que le représente la figure 1. Reverse transcriptase ARN viral Enveloppe cytpoplasmique Capside Glycoprotéine de surface Echelle : 30 nm : 1 cm Figure 1 : Représentation schématique du rétrovirus D un point de vue génomique et simplifié ici, le rétrovirus possède à ces extrémités de longues répétitions terminales (LTR) de 250 à 600 paires de bases (pb) et contient les gènes codants pour trois poly-protéines présentés sur la figure 2 : gag code pour les protéines de la capside pol produit la reverse transcriptase, l intégrase ainsi que la protéase env donne les protéines de l enveloppe cytoplasmique LTR GAG POL ENV LTR Figure 2 : Structure du gène responsable du VIH figure tirée du cours de génétique d Alain Zider, professeur en LBI à Paris 7-5 -

7 Après pénétration du rétrovirus dans la cellule hôte, la reverse transcriptase synthétise de l ADN à partir de la matrice simple brin d ARN, transcrivant ainsi le génome viral. Puis l ARN est dégradé et le brin complémentaire de l ADN synthétisé. L ADN double brin est ensuite intégré dans l ADN chromosomique de la cellule hôte par l intégrase et est répliqué en même temps que l ADN cellulaire. Dans certaines conditions, souvent lors d une infection par un autre agent pathogène, l ADN rétroviral est transcrit donc l ARN viral synthétisé, les protéines exprimées et insérées ou ancrées dans la membrane plasmique de la cellule hôte et de nouveaux virions sont produits par bourgeonnement d un fragment de membrane plasmique, couvert de protéines virales, qui englobe l ARN du virus. Ce mécanisme est représenté sur la figure 3. Figure 3 : Mécanisme de réplication du rétrovirus 2. Utilité de la base au sein du laboratoire Les séquences du VIH sont très largement représentées dans les banques de données existantes dans le domaine public ; plus de séquences nucléotidiques et séquences protéiques du VIH ont été publiées à ce jour. Cette grande variabilité vient du fait que la reverse transcriptase ne possède pas de domaine de correction et fait à peu près 100 fois plus de fautes de polymérisation que la plupart des polymérases eucaryotes et procaryotes. Elle engendre ainsi un grand nombre de mutants. Néanmoins, ces mutations ne peuvent s accumuler sans ordre ni fin. En effet, les protéines produites par ces mutants doivent conserver une structure particulière qui assure leur fonction. Les chercheuses de - 6 -

8 l ABI se sont donc intéressées «aux mutations qui ne peuvent pas apparaître ensemble sans altérer le virus et l empêcher de se multiplier» [1] et ont développé des méthodes d étude. C est dans ce contexte qu elles ont souhaité créer une base de données qui leur permette de sélectionner facilement des lots de séquences ayant une ou plusieurs caractéristiques en commun et sur lesquelles elles puissent appliquer leurs méthodes. 2. Base de Données 1. MySQL MySLQ signifie My Structured Query Language. C est un système de gestion de bases de données (ajouter, lire, traiter des données) et un serveur de bases de données relationnelles (à partir du langage SQL). Le serveur MySQL est très rapide, fiable et facile à utiliser. Développé à l'origine pour gérer de grandes bases de données plus rapidement que les solutions existantes, il a été utilisé avec succès dans des environnements de production très contraints et très exigeants, depuis plusieurs années. MySLQ administre les très grandes bases de données : bases de 50 millions de lignes, tables, 32 index de 500 octets chacun Par défaut, les tables peuvent atteindre une taille de 4Go. Comme les tables sont stockées sous forme de fichiers, il est facile et utile d en faire une sauvegarde [2]. MySQL gère cependant mal les problèmes de redondances, point que je n ai découvert qu après avoir terminé mon stage. A l aide de requêtes, dont quelques exemples sont présentés ici, MySLQ permet de : créer une base de données mysql> CREATE DATABASE HIV; créer des tables mysql> CREATE TABLE traitement (codet VARCHAR(10), duree VARCHAR(10), debut DATE, fin DATE, pathologie TEXT, codep VARCHAR(10)); charger des données dans les tables mysql> INSERT INTO traitement VALUES ('T42','6',' ',' ','allergie','P25'); afficher des données sur une ou plusieurs tables mysql> SELECT codet, pathologie FROM traitement; mysql> SELECT codet, pathologie, codep FROM traitement WHERE pathologie = "allergie" AND codep = "P25"; - 7 -

9 2. Structure de la base La réalisation d une base de données passe par 2 étapes : le modèle mathématique appelé diagramme Entités / Associations et le modèle relationnel, c est-à-dire les tables en elles-mêmes. Diagramme Entités / Associations Cette base regroupe les séquences-produits du gène POL, intégrase, protéase et reverse transcriptase, de personnes porteuses du VIH. Il y a donc un type d entité «génomique» avec ses caractéristiques : code séquence génomique constituant la clé primaire et définissant ainsi l unicité des données, longueur de la séquence, lieu de séquençage, séquence nucléotidique, sous-type, code patient, code banque, code date. Cette séquence génomique code pour une ou plusieurs protéines. D où la création d une entité «protéique» avec ses caractéristiques : code séquence protéique constituant la clé primaire, nom de la protéine, nom du gène, séquence protéique, séquence complète ou non, code patient, code séquence génomique. Ces 2 entités sont reliées par un type d association «coder». On peut récupérer des informations plus ou moins détaillées sur la séquence protéique, informations triées dans 2 types d entités appelées «généralité» avec les caractéristiques : code qui constitue la clé primaire, référence PDB, code résistance aux médicaments, code résistance au système immunitaire, nom de la protéine et «conformation 3D» avec les caractéristiques : référence PDB qui constitue la clé primaire, nom de l inhibiteur. «généralité» est liée à «protéique» par une association «détailler». Il a été constaté qu une sélection de virus mutants capables de survivre à un traitement s opère lorsque ce traitement est administré. C est ainsi qu apparaissent des résistances et que l efficacité des traitements doit constamment être remise en question : les anti-rétroviraux deviennent inactifs car ils ne reconnaissent plus l enzyme sur laquelle ils sont censés agir. D où la création de 2 entités directement reliées à «généralité» nommées «résistance au système [immunitaire]» et «résistance aux médicaments» avec les caractéristiques : code résistance au système [immunitaire] / aux médicaments qui constituent les clés primaires respectives des entités, position de résistance, mutation, niveau de résistance. La séquence génomique est présente dans une au moins des banques existantes sur Internet et on veut conserver l identifiant par lequel elle est nommée dans ces banques. D où - 8 -

10 la création d une entité «banque» avec ses caractéristiques : code banque qui constitue la clé primaire, identifiant swissprot, nom lanl, name lanl, autre nom lanl, autre identifiant swissprot, autre nom swissprot, accession genbank, accession swissprot, nom stanford, numéro de patient stanford, numéro d isolat stanford, traitement stanford et temps de traitement stanford. Cette entité est directement liée à «génomique» et on choisit par souci de simplification de ne pas mettre d association. De la même façon, on veut garder la trace des dates clés concernant la séquence. D où la création d une entité «date», avec ses caractéristiques : code date constituant la clé primaire, date d entrée de la séquence dans la base, date d entrée de la séquence dans la base d origine, date de dernière modification de la séquence dans la base et date de dernière modification de la séquence dans la banque d origine. Ses entités sont reliées par l association «saisir». La séquence génomique a généralement donné lieu à une ou plusieurs publications, rédigées par un ou plusieurs auteurs. D où la création de 2 entités ; l entité «référence» avec ses caractéristiques : code référence qui constitue la clé primaire, titre de la publication, informations (page, volume, date ), référence Medline et référence Pubmed ; et l entité «auteur» avec ses caractéristiques : code auteur qui constitue la clé primaire, nom et prénom. Les entités «génomique» et «référence» sont liées par une association «publier» et les entités «référence» et «auteur» par une association «écrire». La séquence génomique provient d un patient dont on connaît certaines informations quand les séquences sont issues de la banque Stanford. Cette entité est donc aussi liée, par une association «appartenir» à une entité «patient», qui sera divisée par la suite en 5 tables par souci de simplification. Cette entité a pour principales caractéristiques : code patient qui constitue la clé primaire, sexe, date de naissance, lieu de naissance, nom du test de dépistage, date de séroconversion, date de post infection, nationalité, ainsi qu un certain nombre d informations sur sa sexualité, sa famille, la société dans laquelle il vit et son état médical. Ces dernières informations sont liées à une entité «traitement» avec ses caractéristiques : code traitement qui constitue la clé primaire, durée, début et fin du traitement, pathologie et code patient, par l association «suivre». Le lieu de naissance donne suite à la création d une entité «géographie» avec ses caractéristiques : code géographie qui constitue la clé primaire, continent, pays, région, milieu et proximité d une voie internationale. Cette entité sert aussi à déterminer le lieu de séquençage de l entité «génomique». On ne crée pas d association entre ces entités, le lien étant direct

11 Un traitement comporte souvent de nombreux médicaments regroupés dans une entité «médicaments» avec ses caractéristiques : code médicament qui constitue la clé primaire, nom du médicament, composition, présentation, type, formule chimique, et dose recommandée. Ces entités sont reliées par l association «faire partie». Plusieurs patients pouvant prendre le même médicament mais en posologie différente (selon le traitement ou le patient lui-même), on définit une association «prendre» définissant la posologie, entre les entités «patient» et «médicaments». L entité «médicament» est aussi liée à «résistance aux médicaments» par l association «correspondre». A un patient correspond un ou plusieurs marqueurs, définis par l entité «marqueur» avec ses caractéristiques : code marqueur qui constitue la clé primaire, nom du marqueur et séquence concernée. Un marqueur peut correspondre à plusieurs patients. Ces entités sont liées par une association «correspondre». Un diagramme récapitulatif de ce modèle Entités / Association est donné en annexe 1 située en fin de rapport. Modèle Relationnel Le diagramme Entités / Associations est utile pour une première réflexion sur la base à réaliser, mais il est ensuite nécessaire de le transformer en Modèle Relationnel pour pouvoir créer la base en elle-même grâce à MySQL. Les entités préalablement définies deviennent des tables de même nom et leurs caractéristiques des champs de mêmes clés primaires et de types logiquement définis présentés en annexe 3. Les associations sont transformées en tables lorsqu on est en présence de relations dites «n-n» symbolisées par (1,n) ou (0,n) en amont et en aval d une association. C est le cas lorsque deux entités A et B sont liées de la manière suivante : pour une entité A donnée, il existe zéro, une ou plusieurs entités B ; réciproquement, pour une entité B donnée, il existe zéro, une ou plusieurs entités A. Les entités : «auteur»-«référence» «référence»-«génomique» «patient»-«marqueur» «patient»-«médicament» «médicament»-«traitement» «médicament»-«résistance aux médicaments»

12 sont liées par des associations donnant naissance à des tables de noms différents mais relativement explicites. Les champs sont généralement constitués des 2 clés primaires des 2 entités concernées et la réunion de ces clés constitue la clé primaire de la nouvelle table. Les autres associations correspondent à un lien symbolisé par des clés étrangères à l intérieur des tables. Ce modèle est représenté sous Microsoft Access en annexe 2. J ai alors entré ces informations sous MySQL, créant ainsi la structure de la base VIH. 3. Récupération des données 1. Perl Perl signifie Practical Extraction and Report Language que l on pourrait traduire par «langage pratique d extraction et d édition». C est un langage de programmation, qui permet la gestion des expressions régulières. Il est très utilisé en biologie pour parser des séquences. [3] [4]. 2. Contenu de la base Les données récupérées viennent des bases Lanl, Stanford et Swissprot [5]. Les programmes de récupération et de parsing des informations ont été écrits par Anne Vanet dans le langage perl. J ai ensuite traité ces données dans un programme sequence.pl, fourni en annexe 4, qui permet le remplissage des tables créées sous MySQL. Le principe général est simple. A partir d une séquence génomique donnée, on recherche l éventuelle existence d une séquence protéique associée. Dans le cas où elle existe, on insère cette séquence et les informations la concernant dans la table protéique. Dans les deux cas, on insère la séquence génomique et les informations associées dans la table génomique. Les données associées à la banque, aux publications, aux auteurs, au patient séquencé, aux traitements qu il suit, aux médicaments qu il prend sont insérées dans les tables correspondantes, tout en évitant les éventuels doublons. Pour ce faire, le programme remplit des listes d auteurs, de titres, de dates et de médicaments et compare les nouvelles informations à ces listes. Si ces informations sont déjà contenues dans les listes, on n insère pas dans les tables, sinon on insère et on complète les listes

13 4. Interface graphique 1. PHP et HTML MySLQ ne permet pas une visualisation claire des données qu il contient. Il est donc nécessaire de réaliser une interface graphique. Cela se fait très bien à l aide de PHP qui va chercher les informations écrites dans les tables et HTML qui réalise l interface proprement dite. PHP est le sigle mis pour Hypertext Preprocessor. C est un langage de scripts généraliste, facilement intégrable au HTML. Il est à noter la différence avec d autres scripts écrits dans d autres langages tels que Perl ou C. Au lieu d écrire un programme avec de nombreuses lignes de commandes afin d afficher une page HTML, on peut écrire du code HTML avec du code inclus à l intérieur afin de réaliser une action précise (afficher à l écran, par exemple). Le code PHP est inclus entre une balise de début et une balise de fin qui permettent au serveur Web de passer en mode PHP. Une des grandes forces de PHP est le support de nombreux systèmes de gestion de bases de données dont MySLQ [6] [7]. HTML mis pour HyperText Markup Language est un langage de «mark up» qui définit la structure logique d un document www diffusé sur le Web. Ce langage est basé sur la notion d environnement possédant un début et une fin. Un environnement est délimité par un marqueur lui-même délimité par < et >. [8] 2. Visualisation de la base J ai enfin réalisé des programmes.php afin de créer une interface graphique. Seul le premier de ces programmes est présenté ici, car cette interface encore est en cours de développement. En effet lorsque j ai commencé PHP et HTML, seules certaines tables étaient partiellement remplies et l interface porte donc sur ces tables. Je n ai pas eu le temps de la terminer. L idée de départ était de réaliser trois sortes d interface reliées entre elles par le programme base.php, détaillé en annexe 5, qui affiche une page d accueil. Une interface générale permet d accéder à toutes les informations de toutes les tables en choisissant certains critères de sélection. Une interface fasta permet d afficher des séquences alignées ce qui facilite les comparaisons dans un fichier de la forme

14 > nom de la séquence ; id swissprot ; SEQUENCE Une interface «géographie» permet de remplir la table géographie en vue de l éventuel projet en Afrique. Le programme base.php renvoie la figure 4 suivante. Figure 4 : Page d accueil de l interface de la base de données HIV Pour récupérer les données contenues dans les tables, on utilise des fonctions qui sont des requêtes SQL intégrées à du code PHP (figure 5). Des formulaires font ensuite le liens entre l utilisateur et la base (figure 6). /* cette fonction permet d extraire la ligne de donnees de la table banque ou codeb vaut $code */ function extraire($code){ $base = "hiv"; $cx = mysql_connect("abigbug","root","") or die ("echec de connexion"); $db = mysql_select_db($base,$cx) or die ("echec d'ouverture de la base"); $req = "SELECT * FROM banque WHERE banque.codeb='$code'"; $res = mysql_query($req) or die ("echec d'execution de la requete"); return mysql_fetch_array($res, MYSQL_ASSOC);

15 /* pour afficher la sequence nucleotidique correspondant a la reference donnee par $code (coder) */ function pagination2($code){ $base = "hiv"; $cx = mysql_connect("abigbug","root","") or die ("echec de connexion"); or die ("echec d'ouverture de la base"); $db = mysql_select_db($base,$cx) $req = "SELECT * FROM ref, genomique, pagination WHERE ref.coder='$code' AND pagination.coder=ref.coder AND genomique.codesg=pagination.codesg"; $res = mysql_query($req) return mysql_fetch_array($res, MYSQL_ASSOC); or die ("echec d'execution de la requete"); Figure 5 : Exemples de requêtes SQL intégrées à du code PHP. /* creation du formulaire de choix */ $infos = array( "table"=>"nom de la table : ","code"=>"nom de la colonne : ", "voeu"=>"valeur de la case : "); echo "<p align='center'> <b>entrez vos choix dans le formulaire qui suit.</b><hr>"; echo "<form action='extraire.php' method='post'> <table width='95%' border='0' cellspacing='10' cellpadding='2'>\n"; foreach($infos as $champ=>$info){ echo "<tr><td align='right'> <B> {$infos[$champ] </B></td>"; if ($infos[$champ] == "Nom de la table : "){ echo "<td><select name='table'> <option value='3d'>3d <option value='auteur'>auteur <option value='banque'>banque <option value='data'>date <option value='dosage'>dosage <option value='generalite'>généralite <option value='genomique'>génomique <option value='geo'>géographie <option value='marqueur'>marqueur <option value='medicament'>médicament <option value='patient'>patient <option value='patientfam'>patient famille <option value='patientmed'>patient médecine <option value='patientsex'>patient sexualité <option value='patientsoc'>patient société <option value='proteique'>protéique <option value='ref'>référence <option value='resistancemed'>résistancemed <option value='resistancesys'>résistancesys <option value='traitement'>traitement </select></td></tr>"; else{ echo "<td><input type='text' name='$champ' size='20'maxlength='20'></td><tr>"; Figure 6 :Exemple de formulaire de choix

16 Conclusion Le développement de cette base de données sur le VIH s est inscrit dans un contexte utilitaire et aujourd hui,même si l interface n est pas encore utilisable, la quasi-totalité de la structure est conservée, la base remplie et utilisée au sein de l Atelier de BioInformatique, notamment pour des comparaisons de séquences. A ce jour, elle contient séquences des produits du gène POL, dont on extrait séquences protéiques, parmi lesquelles protéases, intégrases et reverse transcriptases. On compte environ patients, traitements, 30 médicaments et 797 références bibliographiques pour auteurs. Les tables concernant les patients sont peu remplies car les données sont souvent absentes et une partie d entre elles a été créée uniquement en vue d un éventuel séquençage en Afrique. La structure de la base est donc fonctionnelle et il est envisageable de l étendre aux produits des gènes GAG et ENV puis à d autres virus tels la grippe ou l hépatite B

17 Annexes ANNEXE 1 : DIAGRAMME ENTITES / ASSOCIATIONS...17 ANNEXE 2 : MODELE RELATIONNEL...18 ANNEXE 3 : DEFINITIONS DES TYPES ASSOCIES AUX CHAMPS...19 ANNEXE 4 : PROGRAMME DE REMPLISSAGE DES TABLES...20 ANNEXE 5 : EXEMPLE DE PROGRAMME DE L INTERFACE

18 Annexe 1 : Diagramme Entités / Associations

19 Annexe 2 : Modèle Relationnel

20 Annexe 3 : Définitions des types associés aux champs TABLE generalites TABLE 3D TABLE resistancesys code varchar(10) refpdb varchar(10) coders varchar(10) refpdb varchar(10) nom_inhib varchar(10) position int coders varchar(10) mutation varchar(10) coderm varchar(10) TABLE genomique niveau_res enum (0 à 5) nom_prot varchar(10) codesg varchar(10) longueur int TABLE proteique TABLE resistancemed codeg varchar(10) codesp varchar(10) coderm varchar(10) seq_nucleo text nom_prot varchar(10) position int sous_type varchar(10) nom_gene varchar(10) mutation varchar(10) codep varchar(10) seq_prot text niveau_res enum (0 à 5) codeb varchar(10) seq_complet bool coded varchar(10) codesg varchar(10) codep varchar(10) TABLE resistance TABLE banque coderm varchar(10) codeb varchar(20) TABLE date codem varchar(10) id_swissprot varchar(20) coded varchar(10) nom_lanl varchar(20) date_ent date TABLE medecine name_lanl varchar(20) date_ent_ori date codem varchar(10) au_nom_lanl varchar(20) date_mod date codet varchar(10) au_id_sw varchar(20) date_mod_ori date au_nom_sw varchar(20) TABLE reference acc_genbank varchar(20) TABLE marqueur coder varchar(10) acc_sw varchar(20) codemq varchar(10) titre varchar(10) nom_stanford varchar(20) nom varchar(10) infos text num_p_stan varchar(20) sequence text refmedline varchar(10) num_is_stan varchar(20) refpubmed varchar(10) tmt_stan varchar(20) TABLE patient_seq tps_tmt_stan varchar(20) codep varchar(10) TABLE pagination codemq varchar(10) codesg varchar(10) TABLE patient coder varchar(10) codep varchar(10) TABLE traitement sexe enum codet varchar(10) TABLE bibli date_naiss date duree varchar(10) coder varchar(10) codeg varchar(10) debut date codea varchar(10) test_depist varchar(10) fin date date_sero date pathologie text TABLE auteur date_postinf date codep varchar(10) codea varchar(10) nationalite varchar(10) nom varchar(10) TABLE medicament prenom varchar(10) TABLE geographie codem varchar(10) codeg varchar(10) nom varchar(10) TABLE dosage continent varchar(10) composition text coded varchar(10) pays varchar(10) presentation varchar(10) codem varchar(10) region varchar(10) type varchar(10) dosage int milieu enum (rur,urb) formule_chim text voie_inter bool dose_recom varchar(10)

21 Annexe 4 : Programme de remplissage des tables sequences.pl #!/usr/bin/perl # Initialisation des variables $ligne="";$seq1="";$seq2="";$nom1="";$nom2="";$debutnom1="";$seq2bis="";$longueur="";$lg=""; $sous_type="";$st=""; $k=0;$j=0;$a=0;$c=0;$d=0;$z=0;$t=0;$m=0; # Ouverture des fichiers open (DONNEE,"data") or die "Pb d'ouverture : $!" ; open (DONNEEFINALE,"data.final") or die "Pb d'ouverture : $!" ; open (RESULTAT, ">assemblage") or die "Pb d'ouverture : $!" ; # Appel de MySQL use DBI; $user="root"; $pass=""; $database="hiv"; $dsn="dbi:mysql:database=$database;host=localhost"; $dbh=dbi->connect($dsn,$user,$pass); # Remplissage du hash de Anne while ($ligne = <DONNEE>){ chomp ($ligne); if ($ligne =~ /^>/){ $seq1=""; $nom1=$ligne; else{ $seq1.=$ligne; $pleinseq1{$nom1=$seq1; # Remplissage du hash de Sophie while ($ligne = <DONNEEFINALE>){ chomp ($ligne); if ($ligne =~ /^>/){ $seq2=""; $nom2=$ligne; else{ $seq2.=$ligne; $pleinseq2{$nom2=$seq2; # Comparaison des sequences while (($nom1, $seq1) = each %pleinseq1){ ++$j; while (($nom2, $seq2) = each %pleinseq2){ $debutnom1 = substr ($nom1,o,74); $nom2 =~ s/;;/; ;/g; $nom2 =~ s/;;/; ;/g; # Cas d'egalite de 2 noms : il existe une sequence proteique extraire de la sequence genomique if ($debutnom1 eq $nom2){ print RESULTAT "$nom2\n$seq1\n$seq2\n"; $seq2bis = $seq2; $seq2bis =~ s/\.//g; $lg = length($seq2bis);

22 # Determination : sequence complete ou non if ($lg == 99){$bool = 'oui'; else{$bool = 'non'; # Insertion dans la table proteique $sql1="insert into proteique values ('SP$a','reverse transcriptase','pol', '$seq2','$bool','sg$k','$champs[5]')"; $sth1=$dbh->prepare($sql1) or die "can't prepare $sql1: $dbh->errstr\n"; $sth1->execute or die "can't execute the query1: $sth1->errstr\n"; # Cas de non egalite : il n'existe pas de sequence proteique correspondant a la sequence genomique else{ print RESULTAT "$nom1\n$seq1\n" ; # Dans tous les cas on fait ce qui suit $nom1 =~ = split (';',$nom1); $longueur = length($seq1); # Comparaison des sous-types if ($champs[2] eq $champs[13] or $champs[2] ne "" and $champs[13] eq ""){ $sous_type = $champs[2]; elsif ($champs[2] eq "" and $champs[13] ne ""){ $sous_type = $champs[13]; $st = $sous-type; # Insertion dans la table banque $sql="insert into banque values ( 'B$k','$champs[0]','$champs[12]','$champs[14]', '$champs[15]','$champs[16]','$champs[17]','$champs[1]', '$champs[11]','$champs[4]','$champs[5]','$champs[6]', '$champs[7]','$champs[8]')"; $sth=$dbh->prepare($sql) or die "can't prepare $sql: $dbh->errstr\n"; $sth->execute or die "can't execute the query: $sth->errstr\n"; # Insertion dans la table genomique $sql2="insert into genomique values ('SG$k','$longueur','','$seq1','$champs[2]', '$champs[5]','b$k','d$d')"; $sth2=$dbh->prepare($sql2) or die "can't prepare $sql2: $dbh->errstr\n"; $sth2->execute or die "can't execute the query2: $sth2->errstr\n"; # Etude des dates pour enlever les doublons # ATTENTION a la premiere mise en marche du programme ( mais pas a chaque reinitialisation ) remplacer la date par la date du jour $drap = 0; for ($w = 0; $w < $#olddate+1; ++$w){ if (($olddate[$w][0] eq "$champs[40]") and ($olddate[$w][1] eq "$champs[41]")){ $drap = 1; last; else{ $drap = 0; if ($drap == 0){ # Insertion dans la table date $sql4="insert into date values ('D$d',' ','$champs[40]',curdate(), '$champs[41]')"; $sth4=$dbh->prepare($sql4) or die "can't prepare $sql4: $dbh->errstr\n"; $sth4->execute or die "can't execute the query4: $sth4->errstr\n"; push ++$d; # Etude des ref et auteurs pour enlever les doublons if ($champs[18] eq ""){ $champs[18] = 1;

Compte rendu de PHP MySQL : création d un formulaire de base de données

Compte rendu de PHP MySQL : création d un formulaire de base de données REVILLION Joris Décembre 2009 3EI Compte rendu de PHP MySQL : création d un formulaire de base de données Objectifs : Le principal objectif de ce cours est de découvrir et de nous familiariser avec le

Plus en détail

TD3 : PHP «avancé» V2.4.0

TD3 : PHP «avancé» V2.4.0 TD3 : PHP «avancé» V2.4.0 Cette œuvre est mise à disposition selon les termes de la licence Creative Commons Attribution Pas d'utilisation Commerciale Partage à l'identique 3.0 non transposé. Document

Plus en détail

TD2-1 : Application client-serveur V2.3.0

TD2-1 : Application client-serveur V2.3.0 TD2-1 : Application client-serveur V2.3.0 Cette œuvre est mise à disposition selon les termes de la licence Creative Commons Attribution Pas d'utilisation Commerciale Partage à l'identique 3.0 non transposé.

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

Internet et applications dans l entreprise (4) PHP

Internet et applications dans l entreprise (4) PHP Licence professionnelle «Management des organisations» Option «Systèmes d information et Réseaux» Internet et applications dans l entreprise (4) PHP 2009-2010 PHP... 3 Balises PHP... 3 Variables, formatage

Plus en détail

Cycle de réplication. Webinaire présenté par : Michael Bailey, directeur, Réalisation des programmes Date : 6 février 2014, de 13 h à 14 h (HNE)

Cycle de réplication. Webinaire présenté par : Michael Bailey, directeur, Réalisation des programmes Date : 6 février 2014, de 13 h à 14 h (HNE) Cycle de réplication virale du VIH Webinaire présenté par : Michael Bailey, directeur, Réalisation des programmes Date : 6 février 2014, de 13 h à 14 h (HNE) Pourquoi est-ce important de comprendre le

Plus en détail

Mini-projet bases de données / Perl

Mini-projet bases de données / Perl Mini-projet bases de données / Perl M1 Bioinformatique 1 Présentation du sujet L objectif de ce mini-projet est de récupérer des données dans un certain format, de les insérer dans une base de données

Plus en détail

Virus: Virus: Diversité génétique. Diversité génétique et variation antigénique. Virus: Conséquences épidémiologiques et thérapeutiques

Virus: Virus: Diversité génétique. Diversité génétique et variation antigénique. Virus: Conséquences épidémiologiques et thérapeutiques Virus: Diversité génétique et variation antigénique Conséquences épidémiologiques et thérapeutiques M. Segondy Virus: Diversité génétique Virus: Génome + Capside ± Enveloppe 1 Virus: Diversité génétique

Plus en détail

Université Bordeaux Segalen Licence 3 MIASHS, semestre 6 (2014/2015)

Université Bordeaux Segalen Licence 3 MIASHS, semestre 6 (2014/2015) Université Bordeaux Segalen Licence 3 MIASHS, semestre 6 (2014/2015) Conception de Sites Web Dynamiques : TD 7 Inscription de membres - Variables de sessions - Formulaires pour insérer des images Version

Plus en détail

1. Avec un script php. 2. En utilisant phpmyadmin

1. Avec un script php. 2. En utilisant phpmyadmin Université Lumière - Lyon 2 Master d Informatique M1 - Année 2006-2007 Programmation Web - TDs n 8 9 : PHP - Mysql L. Tougne (http ://liris.cnrs.fr/laure.tougne), 20/11/06 L objectif de ce TD est d utiliser

Plus en détail

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

II. EXCEL/QUERY ET SQL

II. EXCEL/QUERY ET SQL I. AU TRAVAIL, SQL! 1. Qu est-ce que SQL?... 19 2. SQL est un indépendant... 19 3. Comment est structuré le SQL?... 20 4. Base, table et champ... 21 5. Quelle est la syntaxe générale des instructions SQL?...

Plus en détail

Internet et applications dans l entreprise (4) PHP

Internet et applications dans l entreprise (4) PHP Licence professionnelle «Management des organisations» Option «Systèmes d information et Réseaux» Internet et applications dans l entreprise (4) PHP 2010-2011 PHP... 3 Balises PHP... 3 Variables, formatage

Plus en détail

Mini-projet bases de données / Perl

Mini-projet bases de données / Perl Mini-projet bases de données / Perl M1 Bioinformatique 1 Présentation du sujet L objectif de ce mini-projet est de récupérer des données dans un certain format, de les insérer dans une base de données

Plus en détail

Université Mohamed Premier Année universitaire 2014/2015. Module «Technologies du Web» ---------------------------- Feuille de TP 6 MYSQL/PHP

Université Mohamed Premier Année universitaire 2014/2015. Module «Technologies du Web» ---------------------------- Feuille de TP 6 MYSQL/PHP Université Mohamed Premier Année universitaire 2014/2015 Faculté des Sciences Filière SMI S6 Module «Technologies du Web» ---------------------------- Feuille de TP 6 MYSQL/PHP Exercice 1 : Testez les

Plus en détail

Atelier Web Les langages du Web Le MySQL Module 1 - Les bases

Atelier Web Les langages du Web Le MySQL Module 1 - Les bases Atelier Web Les langages du Web Le MySQL Module 1 - Les bases Définition MySQL = SGBD = Système de Gestion de Base de Données Le rôle du MySQL est de vous aider à enregistrer les données de manière organisée

Plus en détail

LE SIDA: UNE AFFECTION DU SYSTEME IMMUNITAIRE

LE SIDA: UNE AFFECTION DU SYSTEME IMMUNITAIRE LE SIDA: UNE AFFECTION DU SYSTEME IMMUNITAIRE Introduction: Le SIDA, ou syndrome immunodéficience acquise, est une maladie due à un virus, le virus de l'immunodéficience humaine ou VIH (HIV: Human Immunodeficiency

Plus en détail

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web PHP & Bases de données La quantité de données utilisée par certains sites web nécessite l'utilisation d'une base de données Il faut donc disposer d'un SGBD (mysql, postgresql, oracle, ) installé sur un

Plus en détail

Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1

Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1 Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1 Plan Généralités Langage de Définition des (LDD) Langage de Manipulation

Plus en détail

Outils de gestion des ressources biologiques

Outils de gestion des ressources biologiques Le Cahier des Techniques de l INRA 2015 (84) N 1 Outils de gestion des ressources biologiques Frédéric Sanchez 1 *, Tou Cheu Xiong 1 Résumé. Les recherches en biologie génèrent un grand nombre d échantillons

Plus en détail

PHP 5. La base de données MySql. A. Belaïd 1

PHP 5. La base de données MySql. A. Belaïd 1 PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple

Plus en détail

Jusqu à 14 h : Open Questions! On vous explique ce que vous n avez pas compris lors de la première formation.

Jusqu à 14 h : Open Questions! On vous explique ce que vous n avez pas compris lors de la première formation. Bienvenue! Jusqu à 14 h : Open Questions! On vous explique ce que vous n avez pas compris lors de la première formation. Téléchargez les logiciels nécessaires pour cette formation : http ://formation-web.via.ecp.fr

Plus en détail

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL Prise en main de NVU et Notepad++ (conception d application web avec PHP et MySql) Propriétés Intitulé long Formation concernée Matière Présentation Description Conception de pages web dynamiques à l aide

Plus en détail

PHP/MySQL. École Nationale Supérieure des Mines de Nancy 2nde Année

PHP/MySQL. École Nationale Supérieure des Mines de Nancy 2nde Année Bases de Données et Ingénierie des Systèmes d Information 1 PHP/MySQL École Nationale Supérieure des Mines de Nancy 2nde Année Table des matières I PHP 2 1 Les bases 2 1.1 Introduction........................................

Plus en détail

O. Auzende Ingénierie Web. PHP et MySQL

O. Auzende Ingénierie Web. PHP et MySQL O. Auzende Ingénierie Web Création d une base PHP et MySQL Lancez easyphp et créez une base baseqcm, pour l instant vide. Nous allons la remplir avec des questions de C2i (certificat Informatique et Internet).

Plus en détail

Inf340 Systèmes d information. Deuxième site : approche MVC

Inf340 Systèmes d information. Deuxième site : approche MVC Inf340 Systèmes d information Deuxième site : approche MVC Objectifs Objectif : Reprendre le site précédent en utilisant le patron de conception Modèle Vue Contrôleur. Comprendre l apport d un framework

Plus en détail

Développement de l interface Web du projet Hôpital

Développement de l interface Web du projet Hôpital Pôle informatique 2013/2014 École Nationale Supérieure des Mines de Saint-Étienne Développement de l interface Web du projet Hôpital Antoine Zimmermann antoine.zimmermann@emse.fr Le cahier des charges

Plus en détail

Faculté I&C, Claude Petitpierre, André Maurer. Bases de données. SQL (Structured Query Language)

Faculté I&C, Claude Petitpierre, André Maurer. Bases de données. SQL (Structured Query Language) Bases de données SQL (Structured Query Language) Une base de données contient des tables idv region cepage annee Lavaux chasselas 2005 Chianti sangiovese 2002 2 Bourgogne pinot noir 2000 Le nom et le type

Plus en détail

15 septembre 2010. Démo #2 MySQL Séquençage

15 septembre 2010. Démo #2 MySQL Séquençage 15 septembre 2010 Démo #2 MySQL Séquençage SQL et MySQL SQL: structured query language langage pour manipuler des données dans des bases de données relationnelles MySQL: Implantation de SQL Ajout à SQL

Plus en détail

Pratique et administration des systèmes

Pratique et administration des systèmes Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de

Plus en détail

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

Plus en détail

Internet et applications dans l entreprise (1) Scripts clients et scripts CGI

Internet et applications dans l entreprise (1) Scripts clients et scripts CGI Licence professionnelle «Management des organisations» Option «Systèmes d information et Réseaux» Internet et applications dans l entreprise (1) Scripts clients et scripts CGI O. Auzende 2010-2011 INTRODUCTION...

Plus en détail

Généralités sur les virus Structure, Réplication, Évolution

Généralités sur les virus Structure, Réplication, Évolution Généralités sur les virus Structure, Réplication, Évolution Les virus sont des microorganismes de très petite taille, 20 à 300 nanomètres, 100 fois plus petit qu une bactérie, non visibles en microscopie

Plus en détail

Cours Web n o 7 MySQL et PHP

Cours Web n o 7 MySQL et PHP Introduction aux bases de données Cours Web n o 7 MySQL et PHP Sandrine-Dominique Gouraud (gouraud@lri.fr) Pierre Senellart (pierre@senellart.com) Semaine du 7 novembre 2005 S.-D. Gouraud, P. Senellart

Plus en détail

Initiation PHP-MySQL : HTML, HTTP, URL, PHP Vocabulaire, principes et premiers pas

Initiation PHP-MySQL : HTML, HTTP, URL, PHP Vocabulaire, principes et premiers pas Initiation PHP-MySQL : HTML, HTTP, URL, PHP Vocabulaire, principes et premiers pas Olivier BOEBION 12/02/2004 1 Le point de départ 1.1 Et la lumière fut... A la fin des années 1980, Tim Berners-Lee travaillant

Plus en détail

Aide Utilisateur. Cellpass.fr

Aide Utilisateur. Cellpass.fr Aide Utilisateur Mise en place simple :... 2 Création d une ressource... 2 Installation du module... 5 Test fonction file OK... 7 temps de connexion < 1 seconde(s)... 7 Exemple d'installation PassUp pour

Plus en détail

Corrigé Syndic De Coproprietele Syndic Traditionnel

Corrigé Syndic De Coproprietele Syndic Traditionnel Corrigé Syndic De Coproprietele Syndic Traditionnel Listes des dossiers Barème indicatif Dossier 1 : Le système d information du syndic 38 Dossier 2 : L évolution du système d information 33 Dossier 3

Plus en détail

PHP/MySQL avec Dreamweaver CS4

PHP/MySQL avec Dreamweaver CS4 PHP/MySQL avec Dreamweaver CS4 Dreamweaver CS4 Jean-Marie Defrance Groupe Eyrolles, 2009, ISBN : 978-2-212-12551-1 7 Étude de cas : un site marchand Dans ce dernier chapitre, nous allons exploiter Dreamweaver

Plus en détail

Alimentation et interrogation de la base de données depuis PHP

Alimentation et interrogation de la base de données depuis PHP Alimentation et interrogation de la base de données depuis PHP Jean-Philippe PERNIN Université Stendhal Département Informatique Pédagogique Bureau I109 e-mail : Jean-Philippe.Pernin@imag.fr Copyright

Plus en détail

Technologies Web. Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr

Technologies Web. Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr Technologies Web Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr Plan du cours Cours 1 : Introduction HTML/CSS Cours 2 : Introduction programmation web + javascirpt Cours 3 : Introduction

Plus en détail

Licence-Master Bioinformatique Contrôle continu 06/03/06. Correction

Licence-Master Bioinformatique Contrôle continu 06/03/06. Correction Licence-Master Bioinformatique Contrôle continu 06/03/06 Correction -«Vraies» questions de cours -«fausses» questions de cours: questions pour voir si pouviez imaginer une réponse crédible qui n était

Plus en détail

Formulaires. Fiches de savoir associées. C.0.a., C.0.b., C.0.c., C.2.1.a., C.2.1.b. et C.2.3.a.

Formulaires. Fiches de savoir associées. C.0.a., C.0.b., C.0.c., C.2.1.a., C.2.1.b. et C.2.3.a. Activité 10 Formulaires Objectif Travailler sur des formulaires : observer le code et modifier l interface (IHM) de l application. Ressource à utiliser Base de données Formation appformation.mdb Fiches

Plus en détail

Perl Orienté Objet BioPerl There is more than one way to do it

Perl Orienté Objet BioPerl There is more than one way to do it Perl Orienté Objet BioPerl There is more than one way to do it Bérénice Batut, berenice.batut@udamail.fr DUT Génie Biologique Option Bioinformatique Année 2014-2015 Perl Orienté Objet - BioPerl Rappels

Plus en détail

Introduction Mysql API mysqli Annexe. Introduction à PHP. Web et SGBD : un exemple avec Mysql. IUT de Fontainebleau. 8 mars 2014. Introduction à PHP

Introduction Mysql API mysqli Annexe. Introduction à PHP. Web et SGBD : un exemple avec Mysql. IUT de Fontainebleau. 8 mars 2014. Introduction à PHP Web et SGBD : un exemple avec IUT de Fontainebleau 8 mars 2014 1 2 Modèle relationnel 3 4 listes des fonctions mysqli 1 2 Modèle relationnel 3 4 listes des fonctions mysqli Problématique Sites dynamiques

Plus en détail

Université D Oran, Faculté de Médecine, Service D Histologie-Embryologie Dr Belarbi-Amar. Le virus. Les virus(acaryotes)

Université D Oran, Faculté de Médecine, Service D Histologie-Embryologie Dr Belarbi-Amar. Le virus. Les virus(acaryotes) Les virus(acaryotes) Le virus I-Généralités : Le virus (cellule acaryote) est une entité biologique incapable de se reproduire de façon autonome, nécessitant une cellule hôte, dont il utilise les constituants

Plus en détail

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role IFT7 Programmation Serveur Web avec PHP Introduction à MySQL Base de donnée relationnelle Une base de données relationnelle est composée de plusieurs tables possédant des relations logiques (théorie des

Plus en détail

Mysql avec EasyPhp. 1 er mars 2006

Mysql avec EasyPhp. 1 er mars 2006 Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe

Plus en détail

Systèmes d'informations

Systèmes d'informations Systèmes d'informations C'est un ensemble d'outils pour stocker / gérer / diffuser des informations / des données Le stockage : Bases de données + SGDBR La gestion : Saisie, Mise à jour, Contrôle La diffusion

Plus en détail

Web dynamique. Techniques, outils, applications. (Partie C)

Web dynamique. Techniques, outils, applications. (Partie C) Web dynamique Techniques, outils, applications (Partie C) Nadir Boussoukaia - 2006 1 SOMMAIRE 1. MySQL et PHP (20 min) 2. SQL (petits rappels) (20 min) 2 MySQL et PHP Synthèse 3 MySQL et PHP SGBD MySQL

Plus en détail

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES Dossier G11 - Interroger une base de données La base de données Facturation contient tout un ensemble d'informations concernant la facturation de la SAFPB (société anonyme de fabrication de produits de

Plus en détail

INTRODUCTION CHAPITRE 1

INTRODUCTION CHAPITRE 1 CHAPITRE 1 INTRODUCTION Query, qu est-ce que c est?... 11 HTML, CSS, JavaScript, PHP : qui fait quoi?... 16 Un environnement de développement simple et gratuit... 19 Ce que vous allez apprendre... 20 9

Plus en détail

FONCTIONS DE TRAITEMENT} COUNT

FONCTIONS DE TRAITEMENT} COUNT Nom Prénom Promotion Date Buhl Damien Année 1 Groupe 2 21 Janvier 2007 CER Prosit n 22 Mots-Clés : - Requête/Langage SQL Le langage SQL (Structured Query Language) est un langage de requêtes, il permet

Plus en détail

CHAPITRE 3 LA SYNTHESE DES PROTEINES

CHAPITRE 3 LA SYNTHESE DES PROTEINES CHAITRE 3 LA SYNTHESE DES ROTEINES On sait qu un gène détient dans sa séquence nucléotidique, l information permettant la synthèse d un polypeptide. Ce dernier caractérisé par sa séquence d acides aminés

Plus en détail

TRANSMISSION DES VIRUS ET CYCLE DE MULTIPLICATION

TRANSMISSION DES VIRUS ET CYCLE DE MULTIPLICATION TRANSMISSION DES VIRUS ET CYCLE DE MULTIPLICATION II. 1 Généralités II.2 Transmission des Virus II.3 Grandes étapes de Cycle de Multiplication Attachement Pénétration Réplication Libération II. 1 Généralités

Plus en détail

PHP. virginie.sans@irisa.fr http://perso.univ-rennes1.fr/virginie.sans/pwb. Internet et HTML

PHP. virginie.sans@irisa.fr http://perso.univ-rennes1.fr/virginie.sans/pwb. Internet et HTML PHP virginie.sans@irisa.fr http://perso.univ-rennes1.fr/virginie.sans/ BUR Internet et HTML PHP, qu'est-ce que c'est? Un langage pour la programmation du serveur Permet d'inclure des parties programmées

Plus en détail

Les bases de données Page 1 / 8

Les bases de données Page 1 / 8 Les bases de données Page 1 / 8 Sommaire 1 Définitions... 1 2 Historique... 2 2.1 L'organisation en fichier... 2 2.2 L'apparition des SGBD... 2 2.3 Les SGBD relationnels... 3 2.4 Les bases de données objet...

Plus en détail

Système d information

Système d information w w w. a g r o p a r i s t e c h. f r Système d information http://www.agroparistech.fr/systeme-d-information.html Requêtes MySQL en PHP avec AgroSIXPack Liliana IBANESCU UFR Informatique Département MMIP

Plus en détail

Conception de bases de données relationnelles

Conception de bases de données relationnelles Conception de bases de données relationnelles Langage PL/(pg)SQL Marie Szafranski 2015-2016 ensiie 1 2015-2016 ensiie 1 Aperçu de PL/(pg)SQL Aperçu de PL/(pg)SQL PL/SQL : Procedural Language for SQL (Oracle)

Plus en détail

Les outils du génie génétique.

Les outils du génie génétique. Les outils du génie génétique. I\ Les enzymes. On va se servir des enzymes pour couper, coller et synthétiser des acides nucléiques. A\ Les polymérases. Toutes les polymérases agissent de 5 vers 3. En

Plus en détail

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/ Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/

Plus en détail

Bases de données Outils de gestion

Bases de données Outils de gestion 11/03/2010 Bases de données Outils de gestion Mise en place d outils pour gérer, stocker et utiliser les informations d une recherche biomédicale ent réalisé par L. QUINQUIS d épidémiologie et de biostatistique

Plus en détail

Mémento Site Dynamique / PHP

Mémento Site Dynamique / PHP Mémento Site Dynamique / PHP Pour faire fonctionner site statique : Navigateur Éditeur de texte Apache/PHP/MySQL (qu'on peut retrouver dans WampServer (uniquement Windows)) Inclure les portions de page

Plus en détail

Bioinformatique BTV Stockage des données

Bioinformatique BTV Stockage des données 1 / 64 Bioinformatique BTV Stockage des données Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer Juillet 2008 2 / 64 Plan Plan 1 Introduction 2 Format de stockage

Plus en détail

2012-2013 INTRODUCTION PRESENTATION :

2012-2013 INTRODUCTION PRESENTATION : TP1 : Microsoft Access INITITIATION A ACCESS ET CREATION DE TABLES INTRODUCTION Une base de données est un conteneur servant à stocker des données: des renseignements bruts tels que des chiffres, des dates

Plus en détail

EXCEL et L IBM i. Je parcours souvent les forums «IBM i» et les questions récurrentes sont relatives à la «remontée» de données dans Excel.

EXCEL et L IBM i. Je parcours souvent les forums «IBM i» et les questions récurrentes sont relatives à la «remontée» de données dans Excel. EXCEL et L IBM i Patrick THOMAS Les cahiers de L IBMi Je parcours souvent les forums «IBM i» et les questions récurrentes sont relatives à la «remontée» de données dans Excel. Si l on n est pas doté d

Plus en détail

Introduction aux bases de données: application en biologie

Introduction aux bases de données: application en biologie Introduction aux bases de données: application en biologie D. Puthier 1 1 ERM206/Technologies Avancées pour le Génome et la Clinique, http://tagc.univ-mrs.fr/staff/puthier, puthier@tagc.univ-mrs.fr ESIL,

Plus en détail

Formation PHP/MySQL. Pierre PATTARD. Avril 2005

Formation PHP/MySQL. Pierre PATTARD. Avril 2005 Formation PHP/MySQL Pierre PATTARD Julien BENOIT Avril 2005 Le PHP Langage interprété, côté serveur pages interprétées par le serveur web pas de compilation, code éditable avec un bloc notes. aucune différences

Plus en détail

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES

Plus en détail

Le document décortique une interaction HTML-PHP-SQL puis donne le corrigé pour les exercices 1 à 4.

Le document décortique une interaction HTML-PHP-SQL puis donne le corrigé pour les exercices 1 à 4. Le document décortique une interaction HTML-PHP-SQL puis donne le corrigé pour les exercices 1 à 4. I Affichage du formulaire et envoi de données A gauche le code d'une page HTML et à droite son affichage

Plus en détail

PL/SQL INTRODUCTION Introduction à PL/SQ Les procédures, les fonctions et les packages Les triggers

PL/SQL INTRODUCTION Introduction à PL/SQ Les procédures, les fonctions et les packages Les triggers PL/SQL INTRODUCTION Introduction à PL/SQ Les procédures, les fonctions et les packages Les triggers Département d informatique Collège Lionel Groulx. Préparé par Saliha Yacoub Table des matières. Introduction...

Plus en détail

Baccalauréat technologique

Baccalauréat technologique Baccalauréat technologique Série : sciences et technologies de la gestion (STG) Spécialité gestion des systèmes d information SESSION 2010 Eléments de corrigé AIR France Liste des dossiers Dossier 1 :

Plus en détail

Compte rendu d activité Fiche n 1

Compte rendu d activité Fiche n 1 Compte rendu d activité Fiche n 1 Alexandre K. (http://ploufix.free.fr) Nature de l activité Création d une base de connaissances avec PostgreSQL Contexte : Le responsable technique souhaite la mise en

Plus en détail

Architecture applicative de l application Web

Architecture applicative de l application Web Architecture applicative de l application Web Principes d organisation de l application PHP Gsb-AppliFrais Les principes d'organisation de l'application s'inspirent des travaux réalisés autour du contexte

Plus en détail

Réalisation d une application de gestion de production: Rapport de projet

Réalisation d une application de gestion de production: Rapport de projet Réalisation d une application de gestion de production: Pierre Lison (étudiant INFO 22) plison@student.fsa.ucl.ac.be Université Catholique de Louvain Faculté des Sciences Appliquées Département d ingénierie

Plus en détail

Module FMIN358 Technologies du Web : PHP objet et couches d accès aux bases de données

Module FMIN358 Technologies du Web : PHP objet et couches d accès aux bases de données Module FMIN358 Technologies du Web : PHP objet et couches d accès aux bases de données 1. Exploiter une couche métier objet PHP prend en charge certains des grands principes du paradigme objet (héritage,

Plus en détail

1 Partie A : administration d une base de donnée à travers PhpMyAdmin

1 Partie A : administration d une base de donnée à travers PhpMyAdmin Ce TP se compose en 2 sections : une section de prise en main (sur ordinateur) et une section d exercice (sur papier) concernant l algèbre relationnelle. 1 Partie A : administration d une base de donnée

Plus en détail

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS) PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et

Plus en détail

SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION

SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION Année universitaire 20015-2016 Masters Économie Société - Finances Informatique appliquée SGBD Pierre-Henri GOUTTE La requête de sélection

Plus en détail

Vocabulaire 1/2. Base de données : collection de données interreliées. SGBD : système de gestion de bases de données.

Vocabulaire 1/2. Base de données : collection de données interreliées. SGBD : système de gestion de bases de données. Bases de données Au menu : Vocabulaire Le modèle relationnel Types de bases de données Implémentation libre : MySQL Le SQL (Simple Query Language) Administration d'un SGBD Sécurité des SGBD Vocabulaire

Plus en détail

REWEARN la nouvelle façon de monétiser un site web

REWEARN la nouvelle façon de monétiser un site web Réalisé par Guillaume Villechange Avec Matthieu Moly DOSSIER PROJET INFORMATIQUE ET SCIENCE DU NUMERIQUE REWEARN la nouvelle façon de monétiser un site web 0 SOMMAIRE Introduction Etude du projet Le besoin

Plus en détail

Introduction au langage SQL

Introduction au langage SQL Introduction au langage SQL 1. Description SQL est un acronyme pour Structured Query Language qui a été conçu par IBM, et a succédé au langage SEQUEL. C est maintenant le langage le plus utilisé dans les

Plus en détail

Vulnérabilités logicielles Injection SQL

Vulnérabilités logicielles Injection SQL MGR850 Hiver 2014 Vulnérabilités logicielles Injection SQL Hakima Ould-Slimane Chargée de cours École de technologie supérieure (ÉTS) Département de génie électrique 1 Plan SQL Injection SQL Injections

Plus en détail

Gestion de stock pour un magasin

Gestion de stock pour un magasin Département d Informatique Université de Fribourg, Suisse http://diuf.unifr.ch Gestion de stock pour un magasin Stock online utilise ASP/MS-Access DO Thi Tra My No étudiant : 05-333-750 Travail de séminaire

Plus en détail

Programmation Web. Sites dynamiques et bases de données. Mathieu Lacroix. I.U.T. de Villetaneuse. Année 2015-2016

Programmation Web. Sites dynamiques et bases de données. Mathieu Lacroix. I.U.T. de Villetaneuse. Année 2015-2016 Programmation Web Sites dynamiques et bases de données Mathieu Lacroix I.U.T. de Villetaneuse Année 2015-2016 E-mail : mathieu.lacroix@iutv.univ-paris13.fr Page Web : http: // www-lipn. univ-paris13. fr/

Plus en détail

L3 - Sites Web dynamiques : Mini-Wall MINI-WALL

L3 - Sites Web dynamiques : Mini-Wall MINI-WALL L3 - SITES WEB DYNAMIQUES MINI-WALL 1 Introduction L'objectif de ce TD est de mettre en place un mini "livre d'or", permettant à vos visiteurs de vous laisser des messages sur votre site. Une page affiche

Plus en détail

1 Position du problème

1 Position du problème Licence Science et Technologies - INF245 Examen session 1 - mai 2012 Durée : 2 heures Documents non autorisés Le barème est donné à titre indicatif 1 Position du problème Le Club Universitaire de Vélo

Plus en détail

PHP Et Les Bases De Données 22 février 2006

PHP Et Les Bases De Données 22 février 2006 Conservatoire National des Arts et Métiers FOD Ile de France UE NFA054 PHP Et Les Bases De Données 22 février 2006 Version Auteur Commentaires 22 février 2006 Florent Brusciano Version Initiale Tous droits

Plus en détail

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions Exemple accessible via une interface Web Une base de données consultable en ligne : Bases de données et systèmes de gestion de bases de données The Trans-atlantic slave trade database: http://www.slavevoyages.org/tast/index.faces

Plus en détail

Site dynamique PHP Master 1 2010

Site dynamique PHP Master 1 2010 PRINCIPES DE BASE DE CONSTRUCTION DES INSTRUCTIONS PHP echo "Celle-ci a été écrite entièrement en PHP."; Comme vous le voyez, le code PHP est dans la balise Ce qui nous intéresse est à l'intérieur, il

Plus en détail

Influence du nombre de réplicats dans une analyse différentielle de données RNAseq

Influence du nombre de réplicats dans une analyse différentielle de données RNAseq Influence du nombre de réplicats dans une analyse différentielle de données RNAseq Statisticiens: Sophie Lamarre Steve Van Ginkel Sébastien Déjean - Magali San Cristobal Matthieu Vignes Biologistes: Stéphane

Plus en détail

Cours de Base de Données Cours n.2 Introduction à MySQL/PhPMyAdmin

Cours de Base de Données Cours n.2 Introduction à MySQL/PhPMyAdmin Cours de Base de Données Cours n.2 Introduction à MySQL/PhPMyAdmin Ce cours reprend beaucoup de transparents du cours de Philippe LAHIRE Elisabetta De Maria - edemaria@i3s.unice.fr UFR Sciences et Laboratoire

Plus en détail

CFAD. Livret de la formule Webmaster. Qu est-ce qu un Webmaster? En tant Normal, il s agit de la personne responsable d un site.

CFAD. Livret de la formule Webmaster. Qu est-ce qu un Webmaster? En tant Normal, il s agit de la personne responsable d un site. CFAD Livret de la formule Webmaster Qu est-ce qu un Webmaster? En tant Normal, il s agit de la personne responsable d un site. Mais dans notre cas, nous allons considérer que le Webmaster et celui qui,

Plus en détail

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR PHP /MySQL Interface d'accès aux BDDs PDO Youssef CHAHIR 1 PLAN Architecture Interface phpmyadmin Créer une interface PHP/MySQL : Établir une connexion Exécuter une requête Gérer les erreurs Exploiter

Plus en détail

Utilisation et traitement des données saisies sous EndNote avec des scripts PHP/MySQL

Utilisation et traitement des données saisies sous EndNote avec des scripts PHP/MySQL Cah. Tech. Inra, 70, 47-53 Utilisation et traitement des données saisies sous EndNote avec des scripts PHP/MySQL Sabine Julien 1 et Jacques Maratray 1 Résumé : Cet article présente la façon d exploiter

Plus en détail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

Plus en détail

Gestion des incidents

Gestion des incidents Gestion des incidents Dossier concernant la création de l application Réalisé par Julien Thouin, Guillaume Rodier, Vincent Edeyer et Charles Duprey 1/10 Gestion des incidents Dossier concernant la création

Plus en détail

Interfaçage de programmation. c Olivier Caron

Interfaçage de programmation. c Olivier Caron Interfaçage de programmation 1 Le SGBD est-il suffisant? (1/2) Les pour : La puissance du langage de requêtes. 1 Le SGBD est-il suffisant? (1/2) Les pour : La puissance du langage de requêtes. L aspect

Plus en détail

UTILISER LE SERVEUR MYSQL...

UTILISER LE SERVEUR MYSQL... MySQL (pour Windows 9x) UTILISER LE SERVEUR MYSQL... 2 LANCER LE SERVEUR MYSQL... 2 ARRETER LE SERVEUR MYSQL... 3 TRAVAIL AVEC LA CONSOLE MYSQL... 3 CREATION / SUPPRESSION D'UN BASE... 3 UTILISER UN BASE...

Plus en détail

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Définition (G. Gardarin) Entrepôt : ensemble de données historisées variant

Plus en détail