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

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

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

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

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

Programmation MySQL/PHP. Programmation MySQL/PHP p.1/19

Programmation MySQL/PHP. Programmation MySQL/PHP p.1/19 Programmation MySQL/PHP Programmation MySQL/PHP p.1/19 CGI et bases de données Principe : création de documents à partir d une BD MySQL se charge du stockage, de la protection des données, de l interface

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

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

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

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

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

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

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

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

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

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

Création d un site web pour la Communauté des communes du pays vernois et du terroir de la truffe

Création d un site web pour la Communauté des communes du pays vernois et du terroir de la truffe Simon Benjamin BTS SIO Rapport de stage : Création d un site web pour la Communauté des communes du pays vernois et du terroir de la truffe Entreprises : 2014/2015-1 - - 2 - Remerciements Je tiens tout

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

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

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

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

Contexte PPE GSB CR. Analyse. Projet réalisé :

Contexte PPE GSB CR. Analyse. Projet réalisé : Contexte PPE GSB CR Le laboratoire est issu de la fusion entre le géant américain Galaxy et le conglomérat Swiss Bourdin. Cette fusion a eu pour but de moderniser l activité de visite médicale et de réaliser

Plus en détail

Cours HTML/PHP. Cours HTML/PHP. E.Coquery. emmanuel.coquery@liris.cnrs.fr

Cours HTML/PHP. Cours HTML/PHP. E.Coquery. emmanuel.coquery@liris.cnrs.fr Cours HTML/PHP E.Coquery emmanuel.coquery@liris.cnrs.fr Pages Web Pages Web statiques Principe de fonctionnement : L utilisateur demande l accès à une page Web depuis son navigateur. Adresse tapée, clic

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

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

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

TD2 : PHP «avancé» V3.0.0

TD2 : PHP «avancé» V3.0.0 TD2 : «avancé» V3.0.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 en ligne

Plus en détail

Les bases de données (suite) Support de cours Pascal Ballet

Les bases de données (suite) Support de cours Pascal Ballet Les bases de données (suite) Support de cours Pascal Ballet La saisie et l'impression des données Les formulaires de saisie Les formulaires de saisie jouent deux rôles importants : - la mise en forme des

Plus en détail

ESTINATION FORMATION Un aller simple vers le savoir-faire INITIATION A L ANALYSE ET A LA CONCEPTION DE BASE DE DONNEES

ESTINATION FORMATION Un aller simple vers le savoir-faire INITIATION A L ANALYSE ET A LA CONCEPTION DE BASE DE DONNEES ESTINATION FORMATION INITIATION A L ANALYSE ET A LA CONCEPTION DE BASE DE DONNEES AVANT PROPOS Ce support de cours est un outil personnel, il ne constitue pas un guide de référence. C'est un outil pédagogique

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

Thème : Gestion commerciale

Thème : Gestion commerciale Département Génie Informatique BD40 Ingénierie des systèmes d information TP 4 : Ms/Access : Listes déroulantes, Formulaires avancés Thème : Gestion commerciale Christian FISCHER Copyright Novembre 2005

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

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES BASE DE DONNEES La plupart des entreprises possèdent des bases de données informatiques contenant des informations essentielles à leur fonctionnement. Ces informations concernent ses clients, ses produits,

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

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

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

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

FRANCOISE Rémi BTS SIO 2012-2013 DECO FER FORGE FERRONNERIE. Lycée de la cci

FRANCOISE Rémi BTS SIO 2012-2013 DECO FER FORGE FERRONNERIE. Lycée de la cci BTS SIO Lycée de la cci FRANCOISE Rémi 2012-2013 DECO FER FORGE FERRONNERIE Nom du tuteur : FRANCOISE Emmanuel Qualité : CEO BTS SIO 2011/2012 Septembre 2012 TABLE DES MATIERES 1. INTRODUCTION ET PRESENTATION...

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

Bernard Andruccioli IUT Bordeaux Montesquieu Licence professionnelle E-Commerce Gestion sites WWW

Bernard Andruccioli IUT Bordeaux Montesquieu Licence professionnelle E-Commerce Gestion sites WWW IUT Bordeaux Montesquieu BA 2005-2006 Prendre en main DBDesigner4.doc page 1/ IUT Bordeaux Montesquieu BA 2005-2006 Prendre en main DBDesigner4.doc page 2/ Bernard Andruccioli IUT Bordeaux Montesquieu

Plus en détail

La Clé informatique. Formation Access XP Aide-mémoire

La Clé informatique. Formation Access XP Aide-mémoire La Clé informatique Formation Access XP Aide-mémoire Septembre 2003 Définitions de termes Base de données : Se compare à un énorme classeur ayant plusieurs tiroirs où chacun d eux contient des informations

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

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

Pages Web statiques. LIF4 - Initiation aux Bases de données : PHP. Pages Web dynamiques. Illustration. Illustration

Pages Web statiques. LIF4 - Initiation aux Bases de données : PHP. Pages Web dynamiques. Illustration. Illustration statiques LIF4 - Initiation aux Bases de données : E.Coquery emmanuel.coquery@liris.cnrs.fr http ://liris.cnrs.fr/ ecoquery Principe de fonctionnement : L utilisateur demande l accès à une page Web depuis

Plus en détail

Comment stocke-t-on des données sur un site web?

Comment stocke-t-on des données sur un site web? Comment stocke-t-on des données sur un site web? Sommaire I. Introduction aux bases de données II. III. Structure d une base de données Administrer la base avec PHPMyadmin IV. Le langage SQL Pourquoi stocker

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

Introduction à PHP. PHP et SGBD : un exemple avec Mysql. 1 er mai 2015. IUT de Fontainebleau. Introduction Mysql API mysqli Requêtes préparées

Introduction à PHP. PHP et SGBD : un exemple avec Mysql. 1 er mai 2015. IUT de Fontainebleau. Introduction Mysql API mysqli Requêtes préparées PHP et SGBD : un exemple avec IUT de Fontainebleau 1 er mai 2015 Sommaire 1 Introduction 2 3 4 Sommaire 1 Introduction 2 3 4 Problématique Sites dynamiques "Informations dynamiques". Comment la gérer,

Plus en détail

OI40: bases de données, TP 2

OI40: bases de données, TP 2 OI40: bases de données, TP 2 Frédéric Lassabe October 26, 2010 Ce TP requiert d avoir bien compris le TP précédent. 1 Sujet Lors de ce TP, il sera question d améliorer la base de données du TP précédent.

Plus en détail

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs, relations,

Plus en détail

Mon Parcours. Qu'est-ce que Mon Parcours?

Mon Parcours. Qu'est-ce que Mon Parcours? Mon Parcours 1 Mon Parcours Qu'est-ce que Mon Parcours? 2 Mon Parcours Comment y accéder? 3 Mon Parcours Sommaire 4 Mon Parcours Sommaire 5 Mon Parcours Sommaire 6 Portail de connexion Saisissez ici le

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

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

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

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

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

INFO-F-101 Programmation Projet 4 Page Ranking(1/4): Création de la matrice du compte des liens

INFO-F-101 Programmation Projet 4 Page Ranking(1/4): Création de la matrice du compte des liens INFO-F-101 Programmation Projet 4 Page Ranking(1/4): Création de la matrice du compte des liens Année académique 2009 2010 1 Introduction Ce projet est le premier d une série de quatre projets qui ont

Plus en détail

COMPTE RENDU D ACTIVITE ACTIVITE N 4. Identification (objectif) de l'activité. Contexte dans lequel le projet s'inscrit

COMPTE RENDU D ACTIVITE ACTIVITE N 4. Identification (objectif) de l'activité. Contexte dans lequel le projet s'inscrit BTS INFORMATIQUE DE GESTION Option Administrateur de réseaux Développeur d applications COMPTE RENDU D ACTIVITE ACTIVITE N 4 Nom et Prénom : BUISSON Pierre-Adrien EPSI Lyon 107 rue de Marseille 69 007

Plus en détail

CREER UNE BASE DE DONNEES ACCESS AVEC DAO (étape par étape)

CREER UNE BASE DE DONNEES ACCESS AVEC DAO (étape par étape) CREER UNE BASE DE DONNEES ACCESS AVEC DAO (étape par étape) NIVEAU : PREMIERE RENCONTRE AVEC VB INITIES/EXPERIMENTES Pré requis pour comprendre ce tutorial : - Connaître les principales commandes de VB

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

Fida KHATER & Abdoulaziz MOUSSA 03 mars 2012 - Journée Portes Ouvertes à l'um2

Fida KHATER & Abdoulaziz MOUSSA 03 mars 2012 - Journée Portes Ouvertes à l'um2 DEVELOPPEMENT D UNE INTERFACE GRAPHIQUE : LOCAL WEB GUI FOR BLAST (LWBG), POUR LES TRAITEMENTS DE DONNEES BIOLOGIQUES Fida KHATER & Abdoulaziz MOUSSA 03 mars 2012 - Journée Portes Ouvertes à l'um2 Plan

Plus en détail

Europresse.com. Pour les bibliothèques publiques et de l enseignement. Votre meilleur outil de recherche en ligne. Guide version 1.

Europresse.com. Pour les bibliothèques publiques et de l enseignement. Votre meilleur outil de recherche en ligne. Guide version 1. Europresse.com Pour les bibliothèques publiques et de l enseignement Votre meilleur outil de recherche en ligne Guide version 1.5 CEDROM-SNi Comprendre la page d accueil 1. Bandeau de navigation 2. Espace

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

«13_PHP MySQL Synthèse»

«13_PHP MySQL Synthèse» «13_PHP MySQL Synthèse» Dans cet exercice nous allons voir comment alimenter une ou plusieurs tables avec les données qui proviennent d'un même formulaire. Alimenter une table Pour commencer vous allez

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

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

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

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

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

Rappel sur les bases de données

Rappel sur les bases de données Rappel sur les bases de données 1) Généralités 1.1 Base de données et système de gestion de base de donnés: définitions Une base de données est un ensemble de données stockées de manière structurée permettant

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

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

Cahier des charges de l application visant à effectuer un suivi de consommation énergétique pour les communes. Partenaires du projet :

Cahier des charges de l application visant à effectuer un suivi de consommation énergétique pour les communes. Partenaires du projet : Cahier des charges de l application visant à effectuer un suivi de consommation énergétique pour les communes Partenaires du projet : 1 Sommaire A) Contexte... 3 B) Description de la demande... 4 1. Les

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

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

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

Initiation Access 2003

Initiation Access 2003 Initiation Access 2003 Sommaire Introduction...3 1. Création d une base...3 1.1. Modélisation...3 1.2. Création de la base...4 2. Les tables...5 2.1. Création d'une table en mode Création...5 2.2. Les

Plus en détail

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed 6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Gestion du parc informatique matériel et logiciel de l Ensicaen SAKHI Taoufik SIFAOUI Mohammed Suivi ENSICAEN

Plus en détail

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2 Sommaire I. SCENARII DE TRAITEMENTS...2 I.1 : Alimentation à partir d un fichier Access (.mdb)...2 I.1 : Vérification de l intégrité des traitements SQL sur la pyramide des ages...3 I.2 : Vérification

Plus en détail

Tutoriel sur les bases de HTML et de PHP

Tutoriel sur les bases de HTML et de PHP Tutoriel sur les bases de HTML et de PHP Cours : Inf7214 Développement de logiciel Date : Hiver 2009 Ce tutoriel vous donne un aperçu du développement d application WEB avec les langages HTML et PHP. Vous

Plus en détail

Cours 9 Formulaires Web pour saisie de données dans une base de données relationnelle avec PHP (partie 1 de 2)

Cours 9 Formulaires Web pour saisie de données dans une base de données relationnelle avec PHP (partie 1 de 2) École de bibliothéconomie et des sciences de l information SCI6306 Bases de données documentaires Cours 9 Formulaires Web pour saisie de données dans une base de données relationnelle avec PHP (partie

Plus en détail

TD 1 Biais de codons

TD 1 Biais de codons Module LV348 Version enseignant TD 1 page 1/7 TD 1 Biais de codons Revu dernièrement par Mathilde Carpentier, Cyril Gallut et Joël Pothier Version du 15 janvier 2014 L objectif de ce TP est de prendre

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

Bases de données relationnelles

Bases de données relationnelles Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses

Plus en détail

Recherche avancée multichamps

Recherche avancée multichamps Recherche avancée multichamps EBSCOhost Didacticiel support.ebsco.com Bienvenue dans le didacticiel sur la recherche avancée multi-champs EBSCO. Ce didacticiel vous présentera l utilisation des fonctions

Plus en détail

«14_Synthese _PHP_MySQL_cours_4»

«14_Synthese _PHP_MySQL_cours_4» «14_Synthese _PHP_MySQL_cours_4» Maintenant que nous nous sommes connectés à la base de données et y avons mis des informations via un formulaire (cours 13), nous allons voir comment interroger nos tables

Plus en détail

SQL Server 2012 - SQL, Transact SQL Conception et réalisation d'une base de données

SQL Server 2012 - SQL, Transact SQL Conception et réalisation d'une base de données Le modèle relationnel 1. Introduction 9 2. Rappels sur le stockage des données 9 2.1 Les différentes catégories de données 10 2.1.1 Les données de base 10 2.1.2 Les données de mouvement 10 2.1.3 Les données

Plus en détail

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013 Rapport de stage Création d un site web Stage du 20/01/2013 au 21/02/2013 Auteur : Antoine Luczak Tuteur professionnel : M. Tison Tuteur scolaire : Mme Girondon Année scolaire : 2013/2014 1 Table des matières

Plus en détail

Utiliser Access ou Excel pour gérer vos données

Utiliser Access ou Excel pour gérer vos données Page 1 of 5 Microsoft Office Access Utiliser Access ou Excel pour gérer vos données S'applique à : Microsoft Office Access 2007 Masquer tout Les programmes de feuilles de calcul automatisées, tels que

Plus en détail

LINQ to SQL. Version 1.1

LINQ to SQL. Version 1.1 LINQ to SQL Version 1.1 2 Chapitre 03 - LINQ to SQL Sommaire 1 Introduction... 3 1.1 Rappels à propos de LINQ... 3 1.2 LINQ to SQL... 3 2 LINQ to SQL... 3 2.1 Importer des tables... 3 2.1.1 Le concepteur

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

Rapport de Stage. Développeur Informatique Année 2007/2008. Simona DUMITRU

Rapport de Stage. Développeur Informatique Année 2007/2008. Simona DUMITRU Rapport de Stage Développeur Informatique Année 2007/2008 Simona DUMITRU TABLE DES MATIERES TABLE DES MATIERES 2 PRESENTATION DE L ENTREPRISE 3 PROJET MAWARI 5 I THEME DU PROJET ET CAHIER DES CHARGES 6

Plus en détail

Création d un catalogue en ligne

Création d un catalogue en ligne 5 Création d un catalogue en ligne Au sommaire de ce chapitre Fonctionnement théorique Définition de jeux d enregistrements Insertion de contenu dynamique Aperçu des données Finalisation de la page de

Plus en détail

Cours 1 : introduction

Cours 1 : introduction Cours 1 : introduction Modèle entité-association Exemple : Deux entités (produit et dépôt) sont mises en relation (stock). Une entité doit être constituée d un identifiant et peut être complétée par des

Plus en détail

Persistance en Php. Note : les problèmes d accès concurrents, de sécurité et de login sont laissés de côté.

Persistance en Php. Note : les problèmes d accès concurrents, de sécurité et de login sont laissés de côté. Persistance en Php Objectif : faire un site pour gérer des articles par catégorie. Chaque catégorie a un nom, chaque catégorie est constitué d articles (titre, auteur, texte), un article est dans une seule

Plus en détail

Personnaliser et adapter SPIP Développeur SPIP

Personnaliser et adapter SPIP Développeur SPIP Personnaliser et adapter SPIP Développeur SPIP En Théorie Le fonctionnement de SPIP Qu est ce que SPIP? SPIP (Système de Publication pour l Internet Partagé) est un logiciel libre destiné à la production

Plus en détail

Dossier I Découverte de Base d Open Office

Dossier I Découverte de Base d Open Office ETUDE D UN SYSTEME DE GESTION DE BASE DE DONNEES RELATIONNELLES Définition : Un SGBD est un logiciel de gestion des données fournissant des méthodes d accès aux informations. Un SGBDR permet de décrire

Plus en détail

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X Groupe Eyrolles, 2003, ISBN : 2-212-11317-X 3 Création de pages dynamiques courantes Dans le chapitre précédent, nous avons installé et configuré tous les éléments indispensables à la mise en œuvre d une

Plus en détail

Remerciements + compte-rendu

Remerciements + compte-rendu Remerciements + compte-rendu I. Remerciements Tout d abord, je tiens à remercier mon tuteur de stage Thierry UNDERNEHR qui m a accueilli dans son service. Le programme qu il m a proposé pour mon stage

Plus en détail

INTRODUCTION AUX BASES DE DONNÉES

INTRODUCTION AUX BASES DE DONNÉES INTRODUCTION AUX BASES DE DONNÉES Najib TOUNSI Cours à l'usage des premières années informatique Najib TOUNSI - 1 - SOMMAIRE Concepts de Bases Base de Données Système Gestion de Bases de Données Niveau

Plus en détail