Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

PHP - Introduction to PHP MySQL Joins and SQL Functions


Published on

This PPT Gives Information about:
1. Database basics,
2. Indexes,
3. PHP MyAdmin Connect & Pconnect,
4. MySQL Create,
5. MySQL Insert,
6. MySQL Select,
7. MySQL Update,
8. MySQL Delete,
9. MySQL Truncate,
10.MySQL Drop

Published in: Technology
  • Login to see the comments

PHP - Introduction to PHP MySQL Joins and SQL Functions

  1. 1. Introduction to PHPIntroduction to PHP MySQL Joins and SQLMySQL Joins and SQL FunctionsFunctions
  2. 2. MySQL/PHP WorkshopMySQL/PHP Workshop • 2 MySQL lectures • 2 PHP lectures • Each lecture builds on concepts taught and learned in the previous lectures. • The first two lectures discuss the concept of a relational database such as MySQL and show you how to manipulate the data stored in the database from the command line. It is essential to learn this first because PHP makes use of the language of the database. • The third and fourth lectures will introduce you to PHP, a server-side scripting language that allows you to interact with the MySQL database from a web browser and create fancy web pages to display the data. PHP is the go-between that fetches the data from the MySQL database and then spits it out dynamically as the nicely formatted HTML page that the browser expects.
  3. 3. Introduction to MySQLIntroduction to MySQL • Relational databases • Database design • SQL o Creating databases o Creating tables o Selecting from, deleting, and updating tables • Exercises • You should have o Class notes o Exercise handout o MySQL Pocket Reference
  4. 4. First Name Last Name Phone Nadia Li 2687 Madhu Charu 7856 Ajuma Kinsaka 4489 Wade Randal 5257 Helen Clark 2147 Employees Relational DatabasesRelational Databases • A database is a collection of tables • Columns define attributes of the data o All data in a column must have the same data type • A record is stored in a row table name column row
  5. 5. Use a Relational DatabaseUse a Relational Database When…When… • You have a very large dataset • There is redundant data o Wastes disk space o Increases errors • Information must be updated in multiple locations • Security is important o Different users can be granted different permissions • Strict enforcement of data types is important
  6. 6. Spreadsheet ExampleSpreadsheet Example Title Author Borrower Phone A House for Mr. Biswas VS Naipaul Sarah 646.555.1234 Midnight's Children Salman Rushdie On the Road Jack Kerouac
  7. 7. Spreadsheet ExampleSpreadsheet Example Title Author Borrower Phone A House for Mr. Biswas VS Naipaul Sarah 646.555.1234 Midnight's Children Salman Rushdie On the Road Jack Kerouac Data is inconsistent! Now imagine you are designing the New York Public Library database which has tens of million books and well over a million cardholders. One Flew Over the Cuckoo's Nest Ken Kesey Sarah 646.555.1244 Sula Toni Morrison Villette Charlotte Bronte Jim 646.555.4586
  8. 8. Database DesignDatabase Design Entity Relationship Design Entity (“thing”, “object”) Table Attributes (describe entity) Columns Entity Instance Row Relationships between entities preserved in relationships between tables. If you are interested in learning more formal design methods look up “normalization” and/or “third normal form”.
  9. 9. Our dataOur dataEnsembl Gene ID Symbol / Name Chromo some Start Position (bp) End Position (bp) LocusLink ID Taxonomy ID Common Name Species ENSG00000186891.3 TNFRSF18 1 1044947 1048147 8784 9606 human Homo sapiens ENSG00000078808.4 CAB45 1 1058370 1073469 51150 9606 human Homo sapiens ENSG00000176022.1 B3GALT6 1 1073703 1076476 126792 9606 human Homo sapiens ENSG00000160087.5 UBE2J2 1 1095352 1115292 118424 9606 human Homo sapiens ENSG00000162572.4 SCNN1D 1 1123634 1133467 6339 9606 human Homo sapiens ENSG00000162576.4 MGC3047 1 1194130 1199973 84308 9606 human Homo sapiens ENSG00000175756.3 AKIP 1 1215168 1216641 54998 9606 human Homo sapiens ENSG00000131586.2 MRPL20 1 1288703 1294063 55052 9606 human Homo sapiens ENSG00000179403.2 WARP 1 1322311 1327547 64856 9606 human Homo sapiens ENSG00000160072.5 ATAD3B 1 1358611 1396091 83858 9606 human Homo sapiens ENSG00000008128.5 CDC2L2 1 1582617 1604060 985 9606 human Homo sapiens ENSG00000169911.4 SLC35E2 1 1611978 1625728 9906 9606 human Homo sapiens ENSG00000008130.3 FLJ13052 1 1630975 1659805 65220 9606 human Homo sapiens ENSG00000078369.3 GNB1 1 1665027 1770792 2782 9606 human Homo sapiens ENSMUSG00000041954.1 TNFRSF18 4 154139702 154142251 21936 10090 mouse Mus musculus ENSMUSG00000023286.1 UBE2J2 4 154057210 1540722964 140499 10090 mouse Mus musculus
  10. 10. Our tablesOur tables How do we know which organism a gene belongs to? Do we have unique identifiers? Can the organism have more than one gene? Can the gene have more than one organism?
  11. 11. Database Design CaveatDatabase Design Caveat • Sometimes design is “sacrificed” for speed.
  12. 12. Data TypesData Types • float • integer • tinyint • varchar(size) o stores strings o size can be between 0 - 255, inclusive • datetime • + more What data types should our attributes (columns) be?
  13. 13. Complete DesignComplete Design Gene Column Data Type gene_id integer ensembl_gene_id varchar(50) organism_id integer name varchar(35) locuslink varchar(10) chromosome tinyint chromo_start integer chromo_end integer description varchar(255) Organism Column Data Type organism_id integer taxonomy_id integer common_name varchar(35) species varchar(35) Database name: ensmartdb
  14. 14. Connecting to MySQL from the Command LineConnecting to MySQL from the Command Line mysql -uusername -p Example: >mysql -uroot To EXIT MySQL: EXIT;
  15. 15. Basic SQL CommandsBasic SQL Commands • SQL statements end with a semicolon • View databases SHOW DATABASES;
  16. 16. Importing a DatabaseImporting a Database • Creating a database CREATE DATABASE trii; • From the command line: mysql -uusername -ppassword databasename < filename.sql • Example: o mysql -uroot trii < trii.sql
  17. 17. Basic SQL CommandsBasic SQL Commands • Use database databasename USE databasename; • Display all tables in a database SHOW TABLES;
  18. 18. Create TableCreate Table CREATE TABLE organism ( organism_id INTEGER NOT NULL AUTO_INCREMENT, taxonomy_id INTEGER NOT NULL, common_name VARCHAR(35) NOT NULL, species VARCHAR(35) NOT NULL, PRIMARY KEY (organism_id), UNIQUE (taxonomy_id) ); database name column names
  19. 19. View column details for a tableView column details for a table DESC tablename;
  20. 20. Selecting all dataSelecting all data SELECT * FROM tablename;
  21. 21. Select only the columnsSelect only the columns you needyou need (it will be faster)(it will be faster) SELECT common_name, species FROM organism;
  22. 22. Limiting your dataLimiting your data • Get the species name for a specific organism (you have the id) SELECT species FROM organism WHERE organism_id=1; How do we select all the gene names for chromosome 1?
  23. 23. InsertInsert • Inserting a gene INSERT INTO gene (ensembl_gene_id, organism_id, name, chromosome, chromo_start, chromo_end) VALUES (‘MY_NEW_GENE’, 1, ‘MY GENE’, 1, 12345, 67890); • Get the id of the gene: SELECT gene_id FROM gene WHERE name='MY GENE';
  24. 24. Delete/UpdateDelete/Update • Deleting a gene DELETE FROM gene WHERE gene_id=19; • Updating a gene UPDATE gene SET name=‘NEW NAME’ WHERE name=‘AKIP’;
  25. 25. Table JoinsTable Joins • Sometimes you want data from more than one table. To do this we join the tables. The result is a new (temporary) table.
  26. 26. Cross JoinCross Join • SELECT, organism.species FROM gene, organism; Note: There are only two records in the gene table with the name “TNFRSF18”. One is a mouse gene and the other is a human gene. What do you think happened?
  27. 27. Cross Join (Continued)Cross Join (Continued) Each row of the gene table was joined with every row in the organism table.
  28. 28. Cross Join (Continued)Cross Join (Continued) • We want to use the organism id to match a gene record with the correct organism record so that we get: Remember there are two gene records with the name “TNFRSF18”.
  29. 29. Cross Join (Continued)Cross Join (Continued) SELECT, organism.species FROM gene, organism WHERE gene.organism_id=organism.organism_id;
  30. 30. Notice that we have 18 rows and that there are 18 rows in the gene table.
  31. 31. ThankThank You !!!You !!! For More Information click below link: Follow Us on: